17 правил для составления оптимального ЗАПРОСа к данным базы 1С 52 Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получАвтоматическая установка ширины колонки табличного документа. 0 Процедура, которая " примерно" делает автоширину колонок (навроде, как если бы выделить все колонки и дважды щелкнуть мышкой по границе заголовка колонки). Привожу текст, работает неахти, но лучше чем ничего:
Процедура РасчетШириныКолонок(ТабличныйВвести перечисление, выбор перечисления 2
// В 8-ой версии нет такой фунции, но можно сделать так:
ЗначПер=Перечисления.Важность.Средняя; //Установим перечисление предлагаемое выбрать по умолчанию
Если ВвестиЗначение(ЗначПер,"Выберите важность:") тогда
Сообщить(ЗначПер); //обработка вВвод договоров ГПХ в ЗУП (счет 76) 9 Часто меня спрашивают: Как правильно отразить договор ГПХ в ЗУП? Ниже небольшая, последовательная инструкция: Прием на работу Сведения о физическом лице, выполняющем работы по договору подряда, должны быть внесены в справочник Сотрудники организВвод записей в журнал расчетов 1 Добавление записи в журнал расчетов:
Метод Новая может быть вызван где угодно, в глобальном модуле, модуле обработок, документов и т.д.
Данный метод проверяет корректность заполненных реквизитов журнала расчетов. При вводе новых записей журналПосмотреть все результаты поиска похожих
Создание списка всех видов расчетов 0 Для включения всех видов расчетов в произвольный список значений без использования перебора групп видов расчетов можно использовать функцию Шаблон().
//Функция присвоения значения
Функция ПолучениеВР(ВР,Объект)
ВР = Объект;
Возврат " " ;
КонецФуВыгрузка используемых видов расчетов в таблицу значений 0 ТЗВидыРасчетов = Новый ТаблицаЗначений;
ТЗВидыРасчетов.Колонки.Добавить(" ВидРасчета" );
ЖРЗарплата = v7.CreateObject(" ЖурналРасчетов.Зарплата" );
ЖРЗарплата.ВыбратьЗаписи(НачДата,КонДата);
Пока ЖРЗарплата.ПолучитьЗапись() = 1 Цикл
СтрВидыРасчКак указать ссылку на вид расчета 0 ВР = ВидРасчета.НаРуки;
ВР = ВидРасчета.Премия;
ВР = ВидРасчета.ПолучитьАтрибут(" НаРуки" ); Как определить сумму "по окладу" текущего сотрудника 0 ПоОкладу = 0;
ЖЗ = СоздатьОбъект(" ЖурналРасчетов.Зарплата" );
ДатаНач = 01.01.2002;
ЖЗ. ВыбратьПериодПоОбъекту(ТекСотр, ДатаНач);
Пока ЖЗ.ПолучитьЗапись()=1 Цикл
Если ЖЗ.ВидРасч = ВидРасчета.ПоОкладу Тогда
ПоОкладу = ПоОкладу + ЖЗ.РезультатПеребор всех видов расчета и видов расчета, входящих в группу 0 // Перебор всех видов расчета
Для Ном=1 По Метаданные.ВидРасчета() Цикл
кфгВР = Метаданные.ВидРасчета(Ном);
ВР = ВидРасчета.ПолучитьАтрибут(кфгВР.Идентификатор);
КонецЦикла;
// Перебор видов расчета, входящих в группу
Для Ном=1 По ГруппаРаПосмотреть все в категории Виды расчетов