- 1
- 2
- 3
- 4
- 5
- 6
//Текстовый реквизит
//Событие реквизита формы НП_ТелефонПолучателя (Строка (50)) - очистка
Процедура НП_ТелефонПолучателяОчистка(Элемент, СтандартнаяОбработка)
НП_ТелефонПолучателя = "";
КонецПроцедуры
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
//Текстовый реквизит
//Событие реквизита формы НП_ТелефонПолучателя (Строка (50)) - очистка
Процедура НП_ТелефонПолучателяОчистка(Элемент, СтандартнаяОбработка)
НП_ТелефонПолучателя = "";
КонецПроцедуры
Ну чтоб уж точно очистить
+2
Запрос = Новый Запрос;
Запрос.Текст="ВЫБРАТЬ
| ЗаказНаряд.Ссылка КАК Ссылка
|ИЗ
| Документ.ЗаказНаряд КАК ЗаказНаряд
|ГДЕ
| ЗаказНаряд.Проведен = ИСТИНА";
Выборка=Запрос.Выполнить().Выбрать();
Выборка.Следующий();
Если обЗначениеНеЗаполнено(Выборка.Ссылка) Тогда
.......
Чуть упростил запрос для быстроты понимания...
Как проверить запрос ПУСТОЙ() или нет... Вот один из разработчиков нашел метод.....
0
// Иванов И.И. Начало 16.03.2016
//ИспользованиеКВО=Истина;
// Петров П. "Рога и копыта" 17.03.2016
//ИспользованиеКВО=Ложь;
// Иванов И.И. Начало 18.03.2016
//ИспользованиеКВО=Истина;
// Петров П. "Рога и копыта" 19.03.2016
//ИспользованиеКВО=Ложь;
// Иванов И.И. Начало 21.03.2016
//ИспользованиеКВО=Истина;
// Петров П. "Рога и копыта" 23.03.2016
//ИспользованиеКВО=Ложь;
// Иванов И.И. Начало 25.03.2016
//ИспользованиеКВО=Истина;
// Петров П. "Рога и копыта" 25.03.2016
//ИспользованиеКВО=Ложь;
// Иванов И.И. Начало 25.03.2016
//ИспользованиеКВО=Истина;
// Петров П. "Рога и копыта" 25.03.2016
//ИспользованиеКВО=Ложь;
ИспользованиеКВО=Истина;
// Петров П. "Рога и копыта" 25.03.2016
// Иванов И.И. Конец 25.03.2016
// Петров П. "Рога и копыта" 25.03.2016
// Иванов И.И. Конец 25.03.2016
// Петров П. "Рога и копыта" 23.03.2016
// Иванов И.И. Конец 21.03.2016
// Петров П. "Рога и копыта" 19.03.2016
// Иванов И.И. Конец 18.03.2016
// Петров П. "Рога и копыта" 17.03.2016
// Иванов И.И. Конец 16.03.2016
Иванов И.И. Петров П.П. в фильме.. "ПРОТИВОСТОЯНИЕ"
Основан на реальных событиях, фамилии персонажей и названия компаний изменены
0
УпрощенныйРежим = ДилерскийЦентр.Автосервис_ИспользуетсяУпрощенныйИнтерфейс;
Если УпрощенныйРежим ТОгда
Если ЗначениеЗаполнено(Клиент) Тогда
Если ТипЗнч(Клиент) = Тип("СправочникСсылка.Контрагенты") Тогда
ТекущийКлиент = Клиент;
Иначе
ЭлементыФормы.НадписьПредставьтесь.Заголовок = "Клиент представился как: " + Строка(Клиент) + ". Необходимо выбрать клиента";
КонецЕсли;
КонецЕсли;
Если ЗначениеЗаполнено(ТекущийКлиент) Тогда
ЗаполнитьДеревоОбращенийКдиента(ТекущийКлиент);
ЭлементыФормы.ТекущийКонтрагент.ЦветФонаПоля = Новый Цвет (255, 255, 255);
ЭлементыФормы.ТекущийКонтрагент.КнопкаОткрытия = Истина;
ОбновитьТелефонИEmail(ТекущийКлиент);
Если НЕ ЗначениеЗаполнено(ТекущийАвтомобиль) Тогда
ЗаполнитьВыборАвто();
КонецЕсли;
КонецЕсли;
КонецЕсли;
У формы существует реквизит ТекущийКлиент.
При открытии выполняться вот этот вот шедевр.
При сохрани обратно Клиент = ТекущийКлиент;.
И еще если не Упрощенный режим интерфейса то даже у старых документов контрагент будет не выбран.
+4
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ркЛицевыеСчета.Ссылка,
| ркЛицевыеСчета.Помещение,
| ркЛицевыеСчета.Дом КАК Дом,
| ркЛицевыеСчета.Код КАК Код,
| ркЛицевыеСчета.Помещение.Владелец Как ПомещениеВладелец
|ИЗ
| Справочник.ркЛицевыеСчета КАК ркЛицевыеСчета";
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Об = Справочники.ркЛицевыеСчета.НайтиПоКоду(ВыборкаДетальныеЗаписи.Код);
О = Об.ПолучитьОбъект();
Д = Справочники.ркДома.НайтиПоНаименованию(ВыборкаДетальныеЗаписи.ПомещениеВладелец);
ДО = Д.ПолучитьОбъект();
Если Не О.ЭтоГруппа Тогда
О.Дом = ДО.Ссылка;
О.Записать();
КонецЕсли;
//ВыборкаДетальныеЗаписи
КонецЦикла;
Обработка в базе одного клиента.
Не сразу понял что она вообще делает и зачем она ТАК ЭТО ДЕЛАЕТ.
0
// Определим тип возвращаемого результата
РезультатМассив = ?(ВРег(ТипРезультата)="МАССИВ",Истина,Ложь);
РезультатСписок = ?(ВРег(ТипРезультата)="СПИСОКЗНАЧЕНИЙ",Истина,Ложь);
РезультатСтруктура = НЕ РезультатМассив И НЕ РезультатСписок;
Если РезультатСтруктура Тогда
Измерения = Новый Структура;
КонецЕсли;
Если РезультатМассив Тогда
Измерения = Новый Массив;
КонецЕсли;
Если РезультатСписок Тогда
Измерения = Новый СписокЗначений;
КонецЕсли;
Если МассивИсключений = Неопределено Тогда
МассивИсключений = Новый Массив;
КонецЕсли;
А еще вот так можно проверить тип значения
0
НадоОтправить = Ложь;
НадоПолучить = Ложь;
Если Режим = РежимPOP3SMTP или Режим = РежимPOP3SMTPСсылка Тогда
Если Параметры.Свойство("АдресPOP3") и ЗначениеЗаполнено(Параметры.АдресPOP3) Тогда
НадоПолучить = Истина;
КонецЕсли;
Если Параметры.Свойство("АдресSMTP") и ЗначениеЗаполнено(Параметры.АдресSMTP) Тогда
НадоОтправить = Истина;
КонецЕсли;
ИначеЕсли Режим = РежимIMAP или Режим = РежимIMAPСсылка Тогда
Если Параметры.Свойство("АдресIMAP") и ЗначениеЗаполнено(Параметры.АдресIMAP) Тогда
НадоПолучить = Истина;
НадоОтправить = Истина;
КонецЕсли;
ИначеЕсли Режим = РежимIMAPSMTP или Режим = РежимIMAPSMTPСсылка Тогда
Если Параметры.Свойство("АдресIMAP") и ЗначениеЗаполнено(Параметры.АдресIMAP) Тогда
НадоПолучить = Истина;
КонецЕсли;
Если Параметры.Свойство("АдресSMTP") и ЗначениеЗаполнено(Параметры.АдресSMTP) Тогда
НадоОтправить = Истина;
КонецЕсли;
ИначеЕсли Режим = РежимВнешнийПочтовыйКлиент или Режим = РежимВнешнийПочтовыйКлиентСсылка Тогда
Если Параметры.Свойство("ИспользоватьOutlook") и Параметры.ИспользоватьOutlook = Истина Тогда
НадоОтправить = Истина;
НадоПолучить = Истина;
КонецЕсли;
Если Параметры.Свойство("ИспользоватьLotusNotes") и Параметры.ИспользоватьLotusNotes = Истина Тогда
НадоОтправить = Истина;
КонецЕсли;
КонецЕсли;
Если Параметры.Свойство("Отправка") Тогда
ЗначениеСравнения = ЗначениеИзСтрокиВнутр(Параметры.Отправка);
Если ЗначениеСравнения = Истина Тогда
НадоОтправить = Истина;
Иначе
НадоОтправить = Ложь;
КонецЕсли;
КонецЕсли;
Если Параметры.Свойство("Получение") Тогда
ЗначениеСравнения = ЗначениеИзСтрокиВнутр(Параметры.Получение);
Если ЗначениеСравнения = Истина Тогда
НадоПолучить = Истина;
Иначе
НадоПолучить = Ложь;
КонецЕсли;
КонецЕсли;
Когда тебе платят за количество строк.
Обработка загрузка почтовых сообщений. Итилиум, редакция 4.5
+2
Если ЭтаФорма.ВладелецФормы.ТекущийЭлемент.Имя = "кнПосещение" Тогда
ТипТрафика = Справочники.CRM_ТипТрафика.ПосещениеАвтосалона;
ЭтаФорма.Заголовок = НСтр("ru = 'Регистрация нового трафика. Посещение'");
ИначеЕсли ЭтаФорма.ВладелецФормы.ТекущийЭлемент.Имя = "кнЗвонок" Тогда
ТипТрафика = Справочники.CRM_ТипТрафика.Звонок;
ЭтаФорма.Заголовок = НСтр("ru = 'Регистрация нового трафика. Звонок'");
ИначеЕсли ЭтаФорма.ВладелецФормы.ТекущийЭлемент.Имя = "кнEmail" Тогда
ТипТрафика = Справочники.CRM_ТипТрафика.EmailДилера;
ЭтаФорма.Заголовок = НСтр("ru = 'Регистрация нового трафика. Email'");
ЭлементыФормы.полеТелефон.Картинка = БиблиотекаКартинок.Renault_Mail_New_20;
ЭлементыФормы.полеТелефон.Маска = "";
ИначеЕсли ЭтаФорма.ВладелецФормы.ТекущийЭлемент.Имя = "кнЛидRenault" Тогда
ТипТрафика = Справочники.CRM_ТипТрафика.ЛидДилера;
КонецЕсли;
Фирменная CRM система от Renault. Определения типа трафика по имени активного элемента владельца формы.
+4
ВЫБРАТЬ
SEO.титл КАК Титл,
SEO.Описание КАК дескриптионс,
SEO.Кейворд КАК Кейворд,
SEO.Ссылка КАК сео
ИЗ
Справочник.SEO КАК SEO
импортозамещение...
+1
ДействующиеПостановления = Новый Структура;
ДействующиеПостановления.Вставить("Постановление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 больше нигде не используются.