-
0
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
// Определим тип возвращаемого результата
РезультатМассив = ?(ВРег(ТипРезультата)="МАССИВ",Истина,Ложь);
РезультатСписок = ?(ВРег(ТипРезультата)="СПИСОКЗНАЧЕНИЙ",Истина,Ложь);
РезультатСтруктура = НЕ РезультатМассив И НЕ РезультатСписок;
Если РезультатСтруктура Тогда
Измерения = Новый Структура;
КонецЕсли;
Если РезультатМассив Тогда
Измерения = Новый Массив;
КонецЕсли;
Если РезультатСписок Тогда
Измерения = Новый СписокЗначений;
КонецЕсли;
Если МассивИсключений = Неопределено Тогда
МассивИсключений = Новый Массив;
КонецЕсли;
А еще вот так можно проверить тип значения
Migelek,
07 Декабря 2017
-
0
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
НадоОтправить = Ложь;
НадоПолучить = Ложь;
Если Режим = РежимPOP3SMTP или Режим = РежимPOP3SMTPСсылка Тогда
Если Параметры.Свойство("АдресPOP3") и ЗначениеЗаполнено(Параметры.АдресPOP3) Тогда
НадоПолучить = Истина;
КонецЕсли;
Если Параметры.Свойство("АдресSMTP") и ЗначениеЗаполнено(Параметры.АдресSMTP) Тогда
НадоОтправить = Истина;
КонецЕсли;
ИначеЕсли Режим = РежимIMAP или Режим = РежимIMAPСсылка Тогда
Если Параметры.Свойство("АдресIMAP") и ЗначениеЗаполнено(Параметры.АдресIMAP) Тогда
НадоПолучить = Истина;
НадоОтправить = Истина;
КонецЕсли;
ИначеЕсли Режим = РежимIMAPSMTP или Режим = РежимIMAPSMTPСсылка Тогда
Если Параметры.Свойство("АдресIMAP") и ЗначениеЗаполнено(Параметры.АдресIMAP) Тогда
НадоПолучить = Истина;
КонецЕсли;
Если Параметры.Свойство("АдресSMTP") и ЗначениеЗаполнено(Параметры.АдресSMTP) Тогда
НадоОтправить = Истина;
КонецЕсли;
ИначеЕсли Режим = РежимВнешнийПочтовыйКлиент или Режим = РежимВнешнийПочтовыйКлиентСсылка Тогда
Если Параметры.Свойство("ИспользоватьOutlook") и Параметры.ИспользоватьOutlook = Истина Тогда
НадоОтправить = Истина;
НадоПолучить = Истина;
КонецЕсли;
Если Параметры.Свойство("ИспользоватьLotusNotes") и Параметры.ИспользоватьLotusNotes = Истина Тогда
НадоОтправить = Истина;
КонецЕсли;
КонецЕсли;
Если Параметры.Свойство("Отправка") Тогда
ЗначениеСравнения = ЗначениеИзСтрокиВнутр(Параметры.Отправка);
Если ЗначениеСравнения = Истина Тогда
НадоОтправить = Истина;
Иначе
НадоОтправить = Ложь;
КонецЕсли;
КонецЕсли;
Если Параметры.Свойство("Получение") Тогда
ЗначениеСравнения = ЗначениеИзСтрокиВнутр(Параметры.Получение);
Если ЗначениеСравнения = Истина Тогда
НадоПолучить = Истина;
Иначе
НадоПолучить = Ложь;
КонецЕсли;
КонецЕсли;
Когда тебе платят за количество строк.
Обработка загрузка почтовых сообщений. Итилиум, редакция 4.5
RickyBelli,
06 Декабря 2017
-
+2
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
Если ЭтаФорма.ВладелецФормы.ТекущийЭлемент.Имя = "кнПосещение" Тогда
ТипТрафика = Справочники.CRM_ТипТрафика.ПосещениеАвтосалона;
ЭтаФорма.Заголовок = НСтр("ru = 'Регистрация нового трафика. Посещение'");
ИначеЕсли ЭтаФорма.ВладелецФормы.ТекущийЭлемент.Имя = "кнЗвонок" Тогда
ТипТрафика = Справочники.CRM_ТипТрафика.Звонок;
ЭтаФорма.Заголовок = НСтр("ru = 'Регистрация нового трафика. Звонок'");
ИначеЕсли ЭтаФорма.ВладелецФормы.ТекущийЭлемент.Имя = "кнEmail" Тогда
ТипТрафика = Справочники.CRM_ТипТрафика.EmailДилера;
ЭтаФорма.Заголовок = НСтр("ru = 'Регистрация нового трафика. Email'");
ЭлементыФормы.полеТелефон.Картинка = БиблиотекаКартинок.Renault_Mail_New_20;
ЭлементыФормы.полеТелефон.Маска = "";
ИначеЕсли ЭтаФорма.ВладелецФормы.ТекущийЭлемент.Имя = "кнЛидRenault" Тогда
ТипТрафика = Справочники.CRM_ТипТрафика.ЛидДилера;
КонецЕсли;
Фирменная CRM система от Renault. Определения типа трафика по имени активного элемента владельца формы.
NioGoth,
15 Ноября 2017
-
+4
- 1
- 2
- 3
- 4
- 5
- 6
- 7
ВЫБРАТЬ
SEO.титл КАК Титл,
SEO.Описание КАК дескриптионс,
SEO.Кейворд КАК Кейворд,
SEO.Ссылка КАК сео
ИЗ
Справочник.SEO КАК SEO
импортозамещение...
OdinAsss,
14 Ноября 2017
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
ДействующиеПостановления = Новый Структура;
ДействующиеПостановления.Вставить("Постановление914", ДанныеПечати.Дата < ДатаНачалаПримененияПостановления1137);
ДействующиеПостановления.Вставить("Постановление1137", НЕ (ДанныеПечати.Дата < ДатаНачалаПримененияПостановления1137));
ДействующиеПостановления.Вставить("Постановление1137_625", ВедетсяУчетНДСПоФЗ56(ДанныеПечати.Дата,ДанныеПечати.ДатаИсправления));
ДействующиеПостановления.Вставить("Постановление981", ДействуетПостановление981(ДанныеПечати.Дата,ДанныеПечати.ДатаИсправления));
ОпцииПечатиСчетаФактуры.Вставить("ДействующиеПостановления", ДействующиеПостановления);
Если ДанныеПечати.КорректировочныйСчетФактура Тогда
Если ДействующиеПостановления.Постановление981 Тогда
Макет = МакетКорр_981;
ЕстьПостановление981 = Истина;
ИначеЕсли ДействующиеПостановления.Постановление1137_625 Тогда
Макет = МакетКорр_625;
ЕстьПостановление1137_625 = Истина;
Иначе
Макет = МакетКорр;
ЕстьПостановление1137 = Истина;
КонецЕсли;
ИначеЕсли ДействующиеПостановления.Постановление914 Тогда
Макет = Макет451;
ЕстьПостановление914 = Истина;
ИначеЕсли ДействующиеПостановления.Постановление981 Тогда
Макет = Макет981;
ЕстьПостановление981 = Истина;
ИначеЕсли ДействующиеПостановления.Постановление1137_625 Тогда
Макет = Макет1137_625;
ЕстьПостановление1137_625 = Истина;
Иначе
Макет = Макет1137;
ЕстьПостановление1137 = Истина;
КонецЕсли;
Если (ЕстьПостановление914 И ЕстьПостановление1137)
ИЛИ (ЕстьПостановление914 И ЕстьПостановление981)
ИЛИ ((ЕстьПостановление1137 ИЛИ ЕстьПостановление1137_625) И ЕстьПостановление981) Тогда
Текст = НСтр("ru = 'Недоступна одновременная печать счетов-фактур, сформированных по разным постановлениям Правительства РФ'");
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
Текст,
ДанныеПечати.Ссылка);
ТабличныйДокумент.Очистить();
Прервать;
КонецЕсли;
Типовая УТ 11.3.4.93, ПечатьОбщихФорм, модуль менеджера
Что проверяют эти "Если"? Не ошибся ли программист?
Постановление определяется по дате счета-фактуры. Интересно, как можно сформировать счет-фактуру одновременно "по разным постановлениям Правительства РФ"?
И мало того, что вторая и третья строки всегда дают противоположный результат. Нет, на всякий случай проверим "Если (ЕстьПостановление914 И ЕстьПостановление1137)".
Интересно также, как после ИначеЕсли ожидали получить сочетание разных "постановлений"? И почему проверяется всего три неправильных сочетания? Надо больше кода!
Еще понравилась оригинальная идея завести на каждый элемент структуры отдельную переменную, потом присвоить этой переменной то же, что и в структуре, а потом проверить сочетание этих переменных. Надо заметить, что переменные ЕстьПостановлениеYYYY больше нигде не используются.
romanvk,
10 Ноября 2017
-
−4
- 1
- 2
- 3
- 4
//Если Ответ = КодВозвратаДиалога.Нет Штирлиц решил не писать, чтобы запутать врага
Если НЕ Ответ = КодВозвратаДиалога.Да Тогда
Возврат;
КонецЕсли;
Если Ответ = КодВозвратаДиалога.Нет Штирлиц решил не писать, чтобы запутать врага
M1CE,
25 Октября 2017
-
−2
- 1
- 2
Возврат;
КонецПроцедуры
Процедуры!!!
qwertyk,
18 Октября 2017
-
+3
- 1
- 2
- 3
Остатки.Очистить();
ДокиОстатков = Остатки.Скопировать();
ДокиОстатков.Свернуть("НомерВС");
середина функции, никаких если, и прочих ветвлений, условий исключений...
qwertyk,
18 Октября 2017
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
Для каждого стр из Объект.УчётВремени цикл
НРВ = 0;
Если
НачалоДня(стр.ДатаНачала) <> НачалоДня(стр.ДатаОкончания)
Тогда
НРВ = НРВ + (стр.ДатаОкончания - Стр.ДатаНачала) /60 /60
ИначеЕсли //Начало и окончание задачи до начала рабочего дня
(Час(стр.ДатаНачала) < 10 или ( Час(стр.ДатаНачала) = 10 и Минута(стр.ДатаНачала) <=30)) и
(Час(стр.ДатаОкончания) < 10 или ( Час(стр.ДатаОкончания) = 10 и Минута(стр.ДатаОкончания) <=30))
Тогда
НРВ = НРВ + ((стр.ДатаОкончания - стр.ДатаНачала) /60 /60)
ИначеЕсли //Начало задачи до начала рабочего дня, окончание во время рабочего дня
(Час(стр.ДатаНачала) < 10 или ( Час(стр.ДатаНачала) = 10 и Минута(стр.ДатаНачала) <=30)) и
(Час(стр.ДатаОкончания) < 19 и (Час(стр.ДатаОкончания) > 11 или ( Час(стр.ДатаОкончания) = 10 и Минута(стр.ДатаОкончания) > 30)))
Тогда
НРВ = НРВ + ((НачалоДня(стр.ДатаОкончания) + ((10*60)*60) + 1800 - стр.ДатаНачала) /60 /60)
ИначеЕсли //Начало задачи в рабочее время и окончание задачи в нерабочее время
(Час(стр.ДатаНачала) < 19 и (Час(стр.ДатаНачала) > 11 или ( Час(стр.ДатаНачала) = 10 и Минута(стр.ДатаНачала) > 30))) и
Час(Стр.ДатаОкончания) >= 19
Тогда
НРВ = НРВ + (стр.ДатаНачала - (НачалоДня(стр.ДатаОкончания) + ((19*60)*60))) /60 /60
ИначеЕсли
Час(стр.ДатаНачала) >= 19 и Час(стр.ДатаОкончания) >= 19
Тогда
НРВ = (стр.ДатаОкончания - Стр.ДатаНачала) /60 /60
КонецЕсли;
стр.НРВ = НРВ;
Время = (стр.ДатаОкончания - стр.ДатаНачала) /60 /60;
РВ = Время - НРВ;
стр.РВ = РВ;
стр.Время = Время;
КонецЦикла;
Вроде работает
spaceashot,
18 Октября 2017
-
+2
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
Функция ТекстЗапросаДляРасчетаСостоянийОбеспеченияЗаказа()
ТекстЗапроса = "
|ВЫБРАТЬ
| ЗаказКлиентаТовары.Ссылка КАК Заказ,
| МАКСИМУМ(ВЫБОР
| КОГДА ЗаказКлиентаТовары.ВариантОбеспечения В (ЗНАЧЕНИЕ(Перечисление.ВариантыОбеспечения.Требуется), ЗНАЧЕНИЕ(Перечисление.ВариантыОбеспечения.НеТребуется))
| И ЗаказКлиентаТовары.Номенклатура.ТипНоменклатуры В (ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар),ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара))
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ) КАК ОбеспечениеТребуется,
...
Выбирай хоть "Требуется", хоть "Не требуется" - нам все равно!
Типовая УТ 11.3.4.93, регистр сведений СостоянияЗаказовКлиентов, модуль менеджера.
romanvk,
13 Октября 2017