Книга знаний

Рекламное место пустует
1С:Предприятие / v8

v8: Забавный код 80

Собираю коллекцию самых ужасных и смешных кодов.Автор статьи: Гений 1С | Редакторы: acsent
Последняя редакция №8 от 21.07.06 | История
URL: http://kb.mista.ru/article.php?id=301

Групповая обработка документов (Гений 1С)


Автор alvabul написал этот текст в сентябре 2005 года.
http://1c.proclub.ru/modules/mydownloads/personal.php?cid=120&lid=5694
Код предназначен для групповой обработки документов. ТипДокумента - некоторый Тип.
ВыбраныйДокумент=СтрЗаменить(СтрЗаменить(ТипДокумента,"Документ ссылка:","")," ","");
        
Запрос=Новый Запрос;
Запрос.Текст="ВЫБРАТЬ
             |    ВыбраныйДокумент.Номер,
             |    ВыбраныйДокумент.Дата
             |ИЗ
             |    Документ."+ВыбраныйДокумент+" КАК ВыбраныйДокумент
             |ГДЕ
             |    ВыбраныйДокумент.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания";
...             
ВыборкаДокументов=Запрос.Выполнить().Выбрать();    
Пока ВыборкаДокументов.Следующий() Цикл   
    ИскомыйДокумент="";
    СтрокаДляВыполнения="ИскомыйДокумент=Документы."+ВыбраныйДокумент;
    Выполнить(СтрокаДляВыполнения);
                
    ИскомыйДокумент.НайтиПоНомеру(ВыборкаДокументов.Номер,ВыборкаДокументов.Дата).ПолучитьОбъект().Записать(РежимЗаписиДокумента.Запись);
КонецЦикла;

Вместо ссылки автор использует поиск по номеру и дате. С метаданными автор не знаком. И еще много ляпов. :)

Проверка принадлежности родителю (acsent)


Обнаружил этот код, когда выяснял причины долгой выгрузки
Функция НоменклатураРодитель(ссылкаРодитель, ссылкаНоменклатура) Экспорт
    запрос=новый Запрос("ВЫБРАТЬ
    |    Номенклатура.Ссылка
    |ИЗ
    |    Справочник.Номенклатура КАК Номенклатура
    |ГДЕ
    |    Номенклатура.Ссылка В ИЕРАРХИИ(&ссылкаРодитель)
    |    И Номенклатура.Ссылка = &ссылкаНоменклатура");
    Запрос.УстановитьПараметр("ссылкаРодитель",ссылкаРодитель);
    Запрос.УстановитьПараметр("ссылкаНоменклатура",ссылкаНоменклатура);
    Результат=Запрос.Выполнить();
    Если Результат.Пустой() тогда
        возврат ложь;
    иначе
        возврат истина;
    КонецЕсли;
КонецФункции
Правильный вариант
ссылкаНоменклатура.ПринадлежитЭлементу(ссылкаРодитель);

От Гения 1С: Не вижу ничего забавного, челове просто не знал про наличие такого метода, поэтому продублировал его функцией. Это неэффективно, но не смешно. Смешно, когда явные ляпы.
Закладка

Описание | Рубрикатор | Поиск | ТелепатБот | Захваченные статьи | Установки | Форум
© Станислав Митичкин (Волшебник), 2005-2011 | Mista.ru

Яндекс.Метрика