helpf.pro
Регистрация
 +1 
Распечатать

1С 7.x : Ввод записей в журнал расчетов

Добавление записи в журнал расчетов:
Метод Новая может быть вызван где угодно, в глобальном модуле, модуле обработок, документов и т.д.
Данный метод проверяет корректность заполненных реквизитов журнала расчетов. При вводе новых записей журнала расчетов методами Новая и Записать обязательно должны быть заполнены следующие реквизиты записи журнала: Объект, Документ, ВидРасч. Кроме того, проверяется корректность реквизитов ДатаНачала и ДатаОкончания. Если реквизиты ДатаНачала и ДатаОкончания не установлены явным образом, при записи они устанавли­ваются как начало и окончание текущего расчетного прериода, соответственно. Реквизит ПериодРегистрации заполняется текущим значением расчетного периода, установленным для журнала расчетов (см. метод УстановитьПериодРасчета). Если реквизит РодительскийДокумент не установлен явным образом, для него устанавливается то же значение, что и для реквизита Документ. Если реквизиты Рассчитана, Сторно, Перерасчет, Фиксирована не установлены, то запись вводится как простая нерассчитанная, нефиксированная запись.

Внимание! При вводе новых записей в журнал расчетов методами Новая и Записать записи вводятся «как есть». Система не выполняет правила перерасчетов, а также правила взаимного вытеснения видов расчета. Ввод произвольных записей журнала расчетов очень ответственная операция. При использовании этих методов следует внимательно следить за логиче­ской целостностью журнала расчетов
Код 1C v 7.x
 Перем Док;
Перем Сотр;
Перем Рез;
// документы
Док = СоздатьОбъект("Документ");
// ...позиционируется нужный документ
// сотрудники
Сотр = СоздатьОбъект("Справочник.Сотрудники");
// ...позиционируется нужный элемент справочника сотрудники
// результат...
Рез = 555;
ЖР = СоздатьОбъект("ЖурналРасчетов.Зарплата");
ЖР.Новая();
ЖР.УстановитьПериод(ЖР.ПолучитьпериордПоДате(ТекДата));
ЖР.УстановитьРеквизит("Документ", Док.ТекущийДокумент());
ЖР.УстановитьРеквизит("Объект", Сотр.ТекущийЭлемент());
ЖР.УстановитьРеквизит("ВидРасч", Вид Расчета.ПоОкладу);
ЖР.УстановитьРеквизит("Рассчитана", 1);
ЖР.УстановитьРеквизит("Результат", Рез);
ЖР.Записать();



Добавить записи в журнал расчетов которые вводятся при проведении документов:

Методы ВвестиРасчет и ЗаписатьРасчет могут быть вызваны только в модулях документов,
вводящих расчеты. Вызвать эти методы в модулях иных объектов, например
в модуле формы списка ЖЗ или в модуле отчета (обработки), нельзя.


Код 1C v 7.x
 // Ссылка на журнал расчетов
ЖЗ = СоздатьОбъект("ЖурналРасчетов.Зарплата");
ЖЗ.УстановитьРеквизит("Рассчитана",1);
ЖЗ.ВвестиРасчет(ВыбрСотрудник, ВидРасчета.Премия, НачалоМесяца, КонецМесяца, ПремияСотруднику);

или
Код 1C v 7.x
 ЖЗ.ЗаписатьРасчет(ВыбрСотрудник, ВидРасчета.Премия, НачалоМесяца, КонецМесяца, ПремияСотруднику);


Отличие метода ЗаписатьРасчет заключается в том, что ввод вытесняющих расчетов приводит к вытеснению только тех расчетов, которые имеют меньший приоритет, а не меньший либо равный, как в случае с методом ВвестиРасчет. Это приводит, в частности, к тому, что за счет применения этого метода расчет не вытесняет «сам себя».

При записи невытесняющего расчета ввод новых записей также происходит «осмотрительно» — новые записи вводятся только в том случае, если в журнале расчетов нет точно такой же записи. Под точно такой же записью здесь подра­зумевается запись с таким же видом расчета, для того же объекта и с тем же периодом действия.

Вывод: Для обновления самовытесняющего расчета при его повторном вводе другим документом
вместо метода ЗаписатьРасчет используется метод ВвестиРасчет.
Разместил:   Версии: | 7.x |  Дата:   Прочитано: 18829
 +1 
Распечатать
Возможно, вас также заинтересует
Вхождение вида расчета в группу 0
Посчитаем все начисления текущего сотрудника за январь: // 1-й вариант: ВсегоНачислено = 0; ЖЗ.ВыбратьЗаписиПоОбъекту (ТекСотр, ДатаНач, ДатаКон); Пока ЖЗ.ПолучитьЗапись()=1 Цикл Если ЖЗ.ВидРасч.ВходитВГруппу(ГруппаРасчетов.ВсеНачисления)=1 То
Вывести вид и представление вида Журнала Расчетов Зарплата 0
жз = СоздатьОбъект(" ЖурналРасчетов.Зарплата" ); // Идентификатор ЖЗ Сообщить(жз.Вид()); // Зарплата_2 // Синоним ЖЗ Сообщить(жз.ПредставлениеВида()); // Журнал заработной платы
Выгрузка данных в Excel с установкой разных параметров 9
// Процедура выгружает из указанного справочника данные в режиме экспорта в файл в формате Microsoft Excel // с указанным именем, используя преобразование данных к типу число и типу строка; Процедура ОсновныеДействияФормыЭкспорт(Кнопка) Попытка
Выгрузка используемых видов расчетов в таблицу значений 0
ТЗВидыРасчетов = Новый ТаблицаЗначений; ТЗВидыРасчетов.Колонки.Добавить(" ВидРасчета" ); ЖРЗарплата = v7.CreateObject(" ЖурналРасчетов.Зарплата" ); ЖРЗарплата.ВыбратьЗаписи(НачДата,КонДата); Пока ЖРЗарплата.ПолучитьЗапись() = 1 Цикл СтрВидыРасч
Запись СД из 1С(без ВК и других программ, проверено на ХР/2003) 0
Процедура Сформировать(ДискДляЗаписи=" E:" ,АвтоИзвлечениеСД=0,АвтоЗакрытиеМастера=1) Перем Имя,Каталог; scr=СоздатьОбъект(" MSScriptControl.ScriptControl" ); scr.language=" javascript" ; shell=СоздатьОбъект(" Shell.Application" ); scr.AddOb
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.