|
Переход с ЗиК 7.7 на ЗиК 8.2 бюджетного учреждения | ☑ | ||
---|---|---|---|---|
0
ponaroshku
21.11.11
✎
08:34
|
Привет всем!
После перехода появились долги у работников перед предприятием и у предприятия перед работниками Для исправления этой ситуации необходимо занулить начальное сальдо. Есть обработка Перем ТекДокумент; Перем КонецПериодРегистрации; Перем ТекДокСтарый; Перем ТаблицаЗКВ; Перем ДатаКон; Перем СтатьяФинансированияПоУм; Перем КОСГУпоУм; Процедура КнопкаВыполнитьНажатие(Кнопка) ДатаКон=КонецДня(ДатаКонца); СтатьяФинансированияПоУм=СтатьяФинансирования; КОСГУпоУм=КОСГУ; ПереносОстатковНаОдинИсточник(); ВозвратНДФЛ(); ВыплатаДолговПоОстаткам(); ВозвратДолговПоОстаткам(); КонецПроцедуры Процедура ПереносОстатковНаОдинИсточник() СписокРегистров=Новый СписокЗначений; Для к=1 По 2 Цикл Если к=1 Тогда СписокРегистров.Добавить("ВзаиморасчетыСРаботникамиОрганизаций"); СписокРегистров.Добавить("ЗарплатаЗаМесяцОрганизаций"); СписокРегистров.Добавить("НДФЛРасчетыСБюджетом"); СписокРегистров.Добавить("НДФЛСведенияОДоходах"); СписокРегистров.Добавить("НДФЛКЗачету"); Иначе СписокРегистров.Очистить(); СписокРегистров.Добавить("БУДополнительныеНачисления"); СписокРегистров.Добавить("БУОсновныеНачисления"); СписокРегистров.Добавить("БУУдержания"); КонецЕсли; Для каждого Регистр Из СписокРегистров Цикл Если к=1 Тогда ТекРегистр=РегистрыНакопления[Регистр.Значение].СоздатьНаборЗаписей(); Иначе ТекРегистр=РегистрыРасчета[Регистр.Значение].СоздатьНаборЗаписей(); КонецЕсли; ТекДок=Документы.ПереносДанных.Выбрать(); Пока ТекДок.Следующий() Цикл ТекРегистр.Отбор.Регистратор.Значение=ТекДок.Ссылка; ТекРегистр.Отбор.Регистратор.ВидСравнения=ВидСравнения.Равно; ТекРегистр.Отбор.Регистратор.Использование=Истина; ТекРегистр.Прочитать(); Для каждого ЗаписьРегистра Из ТекРегистр Цикл Если к=1 Тогда ПровДата=ЗаписьРегистра.Период; Иначе ПровДата=ЗаписьРегистра.ПериодРегистрации; КонецЕсли; Если ПровДата>=ДатаНач И ПровДата<ДатаКон Тогда Если ЗаписьРегистра.СтатьяФинансирования<>СтатьяФинансированияПоУм Тогда ЗаписьРегистра.СтатьяФинансирования=СтатьяФинансированияПоУм; КонецЕсли; Если ЗаписьРегистра.КОСГУ<>КОСГУпоУм Тогда ЗаписьРегистра.КОСГУ=КОСГУпоУм; КонецЕсли; КонецЕсли; КонецЦикла; ТекРегистр.Записать(); КонецЦикла; КонецЦикла; КонецЦикла; //Предупреждение("Конец переноса остатков на один и сточник и КОСГУ"); Сообщить("Конец переноса остатков на один источник и КОСГУ!"); КонецПроцедуры //ПереносОстатковНаОдинИсточник Процедура ВозвратНДФЛ() ЗапросНДФЛ=Новый Запрос; ЗапросНДФЛ.Текст= "ВЫБРАТЬ РАЗРЕШЕННЫЕ | НДФЛКЗачету.Организация КАК Организация, | НДФЛКЗачету.ФизЛицо КАК ФизЛицо, | НАЧАЛОПЕРИОДА(НДФЛКЗачету.Период, МЕСЯЦ) КАК ПериодРегистрации, | НДФЛКЗачету.СуммаНДФЛКЗачетуОборот КАК Сумма, | НДФЛКЗачету.СтатьяФинансирования КАК СтатьяФинансирования, | НДФЛКЗачету.КОСГУ |ИЗ | РегистрНакопления.НДФЛКЗачету.Обороты(&НачалоПериода, &КонецПериода, Месяц, {(Физлицо), (Организация)}) КАК НДФЛКЗачету | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаПоРасчетуЗарплатыОрганизаций КАК УчетнаяПолитикаПоПерсоналуОрганизаций | ПО НДФЛКЗачету.Организация = УчетнаяПолитикаПоПерсоналуОрганизаций.Организация | И (УчетнаяПолитикаПоПерсоналуОрганизаций.УчетЗадолженностиПоМесяцам) |ГДЕ | НДФЛКЗачету.Организация = &Организация"; ЗапросНДФЛ.УстановитьПараметр("НачалоПериода",ДатаНач); ЗапросНДФЛ.УстановитьПараметр("КонецПериода",ДатаКон); ЗапросНДФЛ.УстановитьПараметр("Организация",Организация); Рез=ЗапросНДФЛ.Выполнить().Выбрать(); Ном=1; //НачатьТранзакцию(); Пока Рез.Следующий() Цикл ПериодРегистрации=Рез.ПериодРегистрации; КонецПериодРегистрации=КонецМесяца(ПериодРегистрации); Если Рез.Сумма<>0 Тогда ДокВозврат=Документы.НДФЛВозвратНалога.СоздатьДокумент(); ДокВозврат.Организация=Организация; ДокВозврат.Номер="Обр_"+НомерДл(Ном,7); ДокВозврат.Дата=КонецПериодРегистрации; ДокВозврат.МесяцНалоговогоПериода=ПериодРегистрации; СтрДок=ДокВозврат.РаботникиОрганизации.Добавить(); СтрДок.ФизЛицо=Рез.ФизЛицо; СтрДок.СуммаВозвратаПоСтавке13=Рез.Сумма; СтрДок.КОСГУ=КОСГУПоУм; СтрДок.КодПоОКАТО=Организация.КодПоОКАТО; СтрДок.КПП=Организация.КПП; СтрДок.СтатьяФинансирования=СтатьяФинансированияПоУм; ДокВозврат.Комментарий="Обработка ""Обнуление остатков - возврат НДФЛ"" - "+Формат(ПериодРегистрации,"ДФ=MMMM yyyy"); Попытка ДокВозврат.Записать(РежимЗаписиДокумента.Проведение); Исключение ДокВозврат.УстановитьНовыйНомер("Обр_"); ДокВозврат.Записать(РежимЗаписиДокумента.Проведение); КонецПопытки; Ном=Ном+1; КонецЕсли; КонецЦикла; //ЗафиксироватьТранзакцию(); //Предупреждение("Конец возврата НДФЛ!"); Сообщить("Конец возврата НДФЛ!"); КонецПроцедуры //ВозвратНДФЛ Процедура ВыплатаДолговПоОстаткам() Запрос=СоздатьЗапрос(); Рез=Запрос.Выполнить().Выбрать(); ////Проверка имеющихся номеров документов // ДопЗапрос=Новый Запрос; // ДопЗапрос.Текст= //"ВЫБРАТЬ //| МАКСИМУМ(ВедомостьВКассу.Номер) КАК НомерВедомость, //| МАКСИМУМ(ЗарплатаКВыплатеОрганизаций.Номер) КАК НомерЗКВ //|ИЗ //| Документ.ВедомостьВКассу КАК ВедомостьВКассу, //| Документ.ЗарплатаКВыплатеОрганизаций КАК ЗарплатаКВыплатеОрганизаций"; // РезНомера=ДопЗапрос.Выполнить().Выгрузить(); ПериодРегистрации='00010101'; ТаблицаДолжников=Новый ТаблицаЗначений(); ТаблицаДолжников.Колонки.Добавить("Сотрудник",,,); ТаблицаДолжников.Колонки.Добавить("Сумма",,,); //НачатьТранзакцию(); Ном=1; Пока Рез.Следующий() Цикл Если Рез.ПериодРегистрации<>ПериодРегистрации Тогда //Закрываем старый Если ТекДокумент<>Неопределено Тогда ЗакрытиеДокта(ТекДокумент,ТаблицаЗКВ,ТекДокСтарый,КонецПериодРегистрации,ПериодРегистрации); КонецЕсли; //Создаем новый ПериодРегистрации=Рез.ПериодРегистрации; КонецПериодРегистрации=КонецМесяца(ПериодРегистрации); ТекДокСтарый=Ложь; //Проверяем, нет ли уже документа МалЗапрос=Новый Запрос; МалЗапрос.Текст= "ВЫБРАТЬ | ЗарплатаКВыплатеОрганизаций.Ссылка КАК СсылкаНачисления, | ВедомостьВКассу.Ссылка КАК СсылкаВыплаты |ИЗ | Документ.ЗарплатаКВыплатеОрганизаций КАК ЗарплатаКВыплатеОрганизаций | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВедомостьВКассу КАК ВедомостьВКассу | ПО (ВедомостьВКассу.ДокументОснование = ЗарплатаКВыплатеОрганизаций.Ссылка) |ГДЕ | ЗарплатаКВыплатеОрганизаций.Проведен = ЛОЖЬ | И ЗарплатаКВыплатеОрганизаций.ПериодРегистрации МЕЖДУ &ПериодРегистрацииН И &ПериодРегистрацииК | И ЗарплатаКВыплатеОрганизаций.Комментарий ПОДОБНО &Комментарий"; МалЗапрос.УстановитьПараметр("ПериодРегистрацииН",НачалоМесяца(ПериодРегистрации)); МалЗапрос.УстановитьПараметр("ПериодРегистрацииК",КонецПериодРегистрации); МалЗапрос.УстановитьПараметр("Комментарий","Обработка ""Выплата долгов по остаткам"" - "+Формат(ПериодРегистрации,"ДФ=MMMM yyyy")); //Было MMMM.yyyy ТаблицаЗКВ=МалЗапрос.Выполнить().Выгрузить(); Если ТаблицаЗКВ.Количество()>0 Тогда ТекДокумент=ТаблицаЗКВ.Получить(0).СсылкаНачисления.ПолучитьОбъект; ТекДокСтарый=Истина; Иначе ТекДокумент=Документы.ЗарплатаКВыплатеОрганизаций.СоздатьДокумент(); ТекДокумент.Дата=КонецПериодРегистрации; ТекДокумент.Номер="Ост_"+НомерДл(Ном,7); ТекДокумент.Комментарий="Обработка ""Обнуление остатков - выплата недоплаченного"" - "+Формат(ПериодРегистрации,"ДФ=MMMM yyyy"); ТекДокумент.ПериодРегистрации=ПериодРегистрации; ТекДокумент.Организация=Рез.Организация; ТекДокумент.ХарактерВыплаты=Перечисления.ХарактерВыплатыЗарплаты.Зарплата; //.ПрочиеРазовыеНачисления; //.Задолженность; ТекДокумент.СтатьяФинансирования=СтатьяФинансированияПоУм; ТекДокумент.КОСГУ=КОСГУПоУм; Ном=Ном+1; КонецЕсли; КонецЕсли; Попытка СтрокаДолжника=ТаблицаДолжников.Найти("Сотрудник",Рез.ФизЛицо); Исключение СтрокаДолжника=Неопределено; КонецПопытки; Если СтрокаДолжника=Неопределено Тогда СтрокаДолжника=ТаблицаДолжников.Добавить(); СтрокаДолжника.Сотрудник=Рез.ФизЛицо; СтрокаДолжника.Сумма=0; КонецЕсли; СтрокаДолжника.Сумма=СтрокаДолжника.Сумма+Рез.СуммаВзаиморасчетовКонечныйОстаток; Если СтрокаДолжника.Сумма>0 Тогда Если НЕ ТекДокСтарый Тогда ЗаполнениеСтрокиТЧ_ЗКВ(ТекДокумент,Рез,СтрокаДолжника); Иначе СтрокаТЧ=ТекДокумент.Зарплата.Найти("ФизЛицо",Рез.ФизЛицо); Если СтрокаТЧ=Неопределено Тогда ЗаполнениеСтрокиТЧ_ЗКВ(ТекДокумент,Рез,СтрокаДолжника); ИначеЕсли СтрокаТЧ.Сумма<>СтрокаДолжника.Сумма Тогда СтрокаТЧ.Сумма=СтрокаДолжника.Сумма; КонецЕсли; КонецЕсли; КонецЕсли; КонецЦикла; ЗакрытиеДокта(ТекДокумент,ТаблицаЗКВ,ТекДокСтарый,КонецПериодРегистрации,ПериодРегистрации); //ЗафиксироватьТранзакцию(); //Предупреждение("Конец выплаты долгов по остаткам!"); Сообщить("Конец выплаты долгов по остаткам!"); КонецПроцедуры //Выплата долгов по остаткам Процедура ВозвратДолговПоОстаткам() Запрос=СоздатьЗапрос(); Запрос.Текст=СтрЗаменить(Запрос.Текст,"ГДЕ | СтруктураЗадолженности.Организация = &Организация", "ГДЕ | СтруктураЗадолженности.Организация = &Организация | И СтруктураЗадолженности.СуммаВзаиморасчетовРасход <> СтруктураЗадолженности.СуммаВзаиморасчетовПриход"); Рез=Запрос.Выполнить().Выбрать(); Ном=1; //НачатьТранзакцию(); Пока Рез.Следующий() Цикл ПериодРегистрации=Рез.ПериодРегистрации; КонецПериодРегистрации=КонецМесяца(ПериодРегистрации); Если Рез.СуммаВзаиморасчетовКонечныйОстаток<0 Тогда ТекДокумент=Документы.ПриходныйКассовыйОрдер.СоздатьДокумент(); ТекДокумент.Номер="Ост_"+НомерДл(Ном,7); ТекДокумент.Дата=КонецПериодРегистрации; ТекДокумент.Комментарий="Обработка ""Обнуление остатков - возврат сотрудниками переплат"" - "+Формат(ПериодРегистрации,"ДФ=MMMM yyyy"); //Было MMMM.yyyy ТекДокумент.Контрагент=Рез.Физлицо; ТекДокумент.КОСГУ=КОСГУПоУм; ТекДокумент.Организация=Рез.Организация; ТекДокумент.СтатьяФинансирования=СтатьяФинансированияПоУм; ТекДокумент.СуммаДокумента=-Рез.СуммаВзаиморасчетовКонечныйОстаток; ТекДокумент.Записать(РежимЗаписиДокумента.Проведение); Ном=Ном+1; КонецЕсли; КонецЦикла; //ЗафиксироватьТранзакцию(); //Предупреждение("Уф!!! Конец! (Возврат долгов сотрудниками)"); Сообщить("Уф!!! Конец! (Возврат долгов сотрудниками)"); КонецПроцедуры //ВозвратДолговПоОстаткам // <Описание функции> // // Параметры // <Параметр1> - <Тип.Вид> - <описание параметра> // <продолжение описания параметра> // <Параметр2> - <Тип.Вид> - <описание параметра> // <продолжение описания параметра> // // Возвращаемое значение: // <Тип.Вид> - <описание возвращаемого значения> // Функция НомерДл(Ном,Дл) СтрНом=Строка(Ном); Если СтрДлина(СтрНом)>Дл Тогда Предупреждение("Номер длиннее отведенных для него позиций, номер будет обрезан!!!"); СтрНом=Прав(СтрНом,Дл); //Возврат СтрНом; Иначе Для к=1 По Дл-СтрДлина(СтрНом) Цикл СтрНом="0"+СтрНом; КонецЦикла; КонецЕсли; Возврат СтрНом; КонецФункции // Номер7() // Функция СоздатьЗапрос() Запрос=Новый Запрос; Запрос.Текст= "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ИсточникДанных.Организация КАК Организация, | ИсточникДанных.ПериодВзаиморасчетов КАК ПериодРегистрации, | ИсточникДанных.СуммаВзаиморасчетовНачальныйОстаток КАК СуммаВзаиморасчетовНачальныйОстаток, | ИсточникДанных.СуммаВзаиморасчетовПриход КАК СуммаВзаиморасчетовПриход, | ИсточникДанных.СуммаВзаиморасчетовРасход КАК СуммаВзаиморасчетовРасход, | ИсточникДанных.СуммаВзаиморасчетовКонечныйОстаток КАК СуммаВзаиморасчетовКонечныйОстаток, | ИсточникДанных.Физлицо КАК Физлицо, | ИсточникДанных.СтатьяФинансирования КАК СтатьяФинансирования, | ИсточникДанных.КОСГУ |ПОМЕСТИТЬ СтруктураЗадолженностиОрганизаций |ИЗ | РегистрНакопления.ВзаиморасчетыСРаботникамиОрганизаций.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , {(ПериодВзаиморасчетов) КАК ПериодРегистрации, (Организация).*}) КАК ИсточникДанных |{ГДЕ | ИсточникДанных.СуммаВзаиморасчетовНачальныйОстаток КАК СуммаВзаиморасчетовНачальныйОстаток, | ИсточникДанных.СуммаВзаиморасчетовПриход КАК СуммаВзаиморасчетовПриход, | ИсточникДанных.СуммаВзаиморасчетовРасход КАК СуммаВзаиморасчетовРасход, | ИсточникДанных.СуммаВзаиморасчетовКонечныйОстаток КАК СуммаВзаиморасчетовКонечныйОстаток, | ИсточникДанных.Организация.*, | ИсточникДанных.Физлицо.*} |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗРЕШЕННЫЕ | НачальныйОстатокОбороты.Организация КАК Организация, | НачальныйОстатокОбороты.ФизЛицо КАК ФизЛицо, | СУММА(НачальныйОстатокОбороты.СуммаНДФЛКЗачетуОстаток) КАК СуммаВзаиморасчетовНачальныйОстаток, | 0 КАК СуммаВзаиморасчетовКонечныйОстаток, | 0 КАК СуммаВзаиморасчетовПриход, | 0 КАК СуммаВзаиморасчетовРасход, | НачальныйОстатокОбороты.ПериодРегистрации КАК ПериодРегистрации, | НачальныйОстатокОбороты.СтатьяФинансирования КАК СтатьяФинансирования, | НачальныйОстатокОбороты.КОСГУ |ПОМЕСТИТЬ НДФЛкЗачетуНачальноеСальдо |ИЗ | (ВЫБРАТЬ | НДФЛКЗачету.Организация КАК Организация, | &НачалоПериода КАК ПериодРегистрации, | НДФЛКЗачету.ФизЛицо КАК ФизЛицо, | НДФЛКЗачету.СуммаНДФЛКЗачетуОстаток КАК СуммаНДФЛКЗачетуОстаток, | НДФЛКЗачету.СтатьяФинансирования КАК СтатьяФинансирования, | НДФЛКЗачету.КОСГУ КАК КОСГУ | ИЗ | РегистрНакопления.НДФЛКЗачету.Остатки(&НачалоПериода, {(Физлицо), (Организация)}) КАК НДФЛКЗачету | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | НДФЛКЗачету.Организация, | ДОБАВИТЬКДАТЕ(НДФЛКЗачету.Период, МЕСЯЦ, 1), | НДФЛКЗачету.ФизЛицо, | НДФЛКЗачету.СуммаНДФЛКЗачетуОборот, | НДФЛКЗачету.СтатьяФинансирования, | НДФЛКЗачету.КОСГУ | ИЗ | РегистрНакопления.НДФЛКЗачету.Обороты(&НачалоПериода, &КонецПериода, Месяц, {(Физлицо), (Организация)}) КАК НДФЛКЗачету | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаПоРасчетуЗарплатыОрганизаций КАК УчетнаяПолитикаПоПерсоналуОрганизаций | ПО НДФЛКЗачету.Организация = УчетнаяПолитикаПоПерсоналуОрганизаций.Организация | И (УчетнаяПолитикаПоПерсоналуОрганизаций.УчетЗадолженностиПоМесяцам)) КАК НачальныйОстатокОбороты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаПоПерсоналуОрганизаций КАК УчетнаяПолитикаПоПерсоналуОрганизаций | ПО НачальныйОстатокОбороты.Организация = УчетнаяПолитикаПоПерсоналуОрганизаций.Организация |{ГДЕ | НачальныйОстатокОбороты.Организация.*, | НачальныйОстатокОбороты.ФизЛицо.*, | НачальныйОстатокОбороты.ПериодРегистрации КАК ПериодРегистрации} | |СГРУППИРОВАТЬ ПО | НачальныйОстатокОбороты.Организация, | НачальныйОстатокОбороты.ФизЛицо, | НачальныйОстатокОбороты.ПериодРегистрации, | НачальныйОстатокОбороты.СтатьяФинансирования, | НачальныйОстатокОбороты.КОСГУ |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗРЕШЕННЫЕ | НачальныйОстатокОбороты.Организация КАК Организация, | НачальныйОстатокОбороты.ФизЛицо КАК ФизЛицо, | НачальныйОстатокОбороты.СуммаНДФЛКЗачетуОстаток КАК СуммаВзаиморасчетовКонечныйОстаток, | 0 КАК СуммаВзаиморасчетовНачальныйОстаток, | 0 КАК СуммаВзаиморасчетовПриход, | 0 КАК СуммаВзаиморасчетовРасход, | НачальныйОстатокОбороты.ПериодРегистрации КАК ПериодРегистрации, | НачальныйОстатокОбороты.СтатьяФинансирования КАК СтатьяФинансирования, | НачальныйОстатокОбороты.КОСГУ |ПОМЕСТИТЬ НДФЛкЗачетуКонечноеСальдо |ИЗ | (ВЫБРАТЬ | НДФЛКЗачету.Организация КАК Организация, | &НачалоПериода КАК ПериодРегистрации, | НДФЛКЗачету.ФизЛицо КАК ФизЛицо, | НДФЛКЗачету.СуммаНДФЛКЗачетуОстаток КАК СуммаНДФЛКЗачетуОстаток, | НДФЛКЗачету.СтатьяФинансирования КАК СтатьяФинансирования, | НДФЛКЗачету.КОСГУ КАК КОСГУ | ИЗ | РегистрНакопления.НДФЛКЗачету.Остатки(ДОБАВИТЬКДАТЕ(КОНЕЦПЕРИОДА(&НачалоПериода, МЕСЯЦ), СЕКУНДА, 1), {(Физлицо), (Организация)}) КАК НДФЛКЗачету | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | НДФЛКЗачету.Организация, | ДОБАВИТЬКДАТЕ(НДФЛКЗачету.Период, МЕСЯЦ, 1), | НДФЛКЗачету.ФизЛицо, | НДФЛКЗачету.СуммаНДФЛКЗачетуОборот, | НДФЛКЗачету.СтатьяФинансирования, | НДФЛКЗачету.КОСГУ | ИЗ | РегистрНакопления.НДФЛКЗачету.Обороты(ДОБАВИТЬКДАТЕ(КОНЕЦПЕРИОДА(&НачалоПериода, МЕСЯЦ), СЕКУНДА, 1), ДОБАВИТЬКДАТЕ(&КонецПериода, СЕКУНДА, 1), Месяц, {(Физлицо), (Организация)}) КАК НДФЛКЗачету | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаПоРасчетуЗарплатыОрганизаций КАК УчетнаяПолитикаПоПерсоналуОрганизаций | ПО НДФЛКЗачету.Организация = УчетнаяПолитикаПоПерсоналуОрганизаций.Организация | И (УчетнаяПолитикаПоПерсоналуОрганизаций.УчетЗадолженностиПоМесяцам)) КАК НачальныйОстатокОбороты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаПоПерсоналуОрганизаций КАК УчетнаяПолитикаПоПерсоналуОрганизаций | ПО НачальныйОстатокОбороты.Организация = УчетнаяПолитикаПоПерсоналуОрганизаций.Организация |{ГДЕ | НачальныйОстатокОбороты.Организация.*, | НачальныйОстатокОбороты.ФизЛицо.*, | НачальныйОстатокОбороты.ПериодРегистрации КАК ПериодРегистрации} |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗРЕШЕННЫЕ | Взаиморасчеты.Организация КАК Организация, | НАЧАЛОПЕРИОДА(Взаиморасчеты.Период, МЕСЯЦ) КАК ПериодРегистрации, | Взаиморасчеты.Физлицо КАК ФизЛицо, | СУММА(ЗарплатаКВыплатеОрганизацийЗарплата.КомпенсацияЗаЗадержкуЗарплаты) КАК СуммаВзаиморасчетовПриход, | СУММА(ЗарплатаКВыплатеОрганизацийЗарплата.КомпенсацияЗаЗадержкуЗарплаты) КАК СуммаВзаиморасчетовРасход, | 0 КАК СуммаВзаиморасчетовНачальныйОстаток, | 0 КАК СуммаВзаиморасчетовКонечныйОстаток, | Взаиморасчеты.СтатьяФинансирования КАК СтатьяФинансирования, | Взаиморасчеты.КОСГУ |ПОМЕСТИТЬ КомпенсацияЗаЗадержкуЗП |ИЗ | РегистрНакопления.ВзаиморасчетыСРаботникамиОрганизаций КАК Взаиморасчеты | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗарплатаКВыплатеОрганизаций.Зарплата КАК ЗарплатаКВыплатеОрганизацийЗарплата | ПО Взаиморасчеты.Физлицо = ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо | И Взаиморасчеты.Ведомость = ЗарплатаКВыплатеОрганизацийЗарплата.Ссылка | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаПоПерсоналуОрганизаций КАК УчетнаяПолитикаПоПерсоналуОрганизаций | ПО Взаиморасчеты.Организация = УчетнаяПолитикаПоПерсоналуОрганизаций.Организация |ГДЕ | Взаиморасчеты.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) | И Взаиморасчеты.СуммаВзаиморасчетов <> 0 | И Взаиморасчеты.Период МЕЖДУ &НачалоПериода И &КонецПериода |{ГДЕ | Взаиморасчеты.Физлицо.*, | Взаиморасчеты.Организация.*} | |СГРУППИРОВАТЬ ПО | Взаиморасчеты.Организация, | Взаиморасчеты.Физлицо, | НАЧАЛОПЕРИОДА(Взаиморасчеты.Период, МЕСЯЦ), | Взаиморасчеты.СтатьяФинансирования, | Взаиморасчеты.КОСГУ | |ИМЕЮЩИЕ | СУММА(ЗарплатаКВыплатеОрганизацийЗарплата.КомпенсацияЗаЗадержкуЗарплаты) <> 0 |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗРЕШЕННЫЕ | НДФЛКЗачету.Организация КАК Организация, | НДФЛКЗачету.ФизЛицо КАК ФизЛицо, | НАЧАЛОПЕРИОДА(НДФЛКЗачету.Период, МЕСЯЦ) КАК ПериодРегистрации, | НДФЛКЗачету.СуммаНДФЛКЗачетуОборот КАК СуммаВзаиморасчетовПриход, | 0 КАК СуммаВзаиморасчетовРасход, | 0 КАК СуммаВзаиморасчетовНачальныйОстаток, | 0 КАК СуммаВзаиморасчетовКонечныйОстаток, | НДФЛКЗачету.СтатьяФинансирования КАК СтатьяФинансирования, | НДФЛКЗачету.КОСГУ |ПОМЕСТИТЬ НДФЛкЗачету |ИЗ | РегистрНакопления.НДФЛКЗачету.Обороты(&НачалоПериода, &КонецПериода, Месяц, {(Физлицо), (Организация)}) КАК НДФЛКЗачету | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УчетнаяПолитикаПоРасчетуЗарплатыОрганизаций КАК УчетнаяПолитикаПоПерсоналуОрганизаций | ПО НДФЛКЗачету.Организация = УчетнаяПолитикаПоПерсоналуОрганизаций.Организация | И (УчетнаяПолитикаПоПерсоналуОрганизаций.УчетЗадолженностиПоМесяцам) |{ГДЕ | НДФЛКЗачету.Организация.*, | НДФЛКЗачету.ФизЛицо.*, | (НАЧАЛОПЕРИОДА(НДФЛКЗачету.Период, МЕСЯЦ)) КАК ПериодРегистрации} |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | СтруктураЗадолженностиОрганизаций.Организация КАК Организация, | СтруктураЗадолженностиОрганизаций.Физлицо, | СтруктураЗадолженностиОрганизаций.ПериодРегистрации, | СтруктураЗадолженностиОрганизаций.СуммаВзаиморасчетовНачальныйОстаток, | СтруктураЗадолженностиОрганизаций.СуммаВзаиморасчетовПриход, | СтруктураЗадолженностиОрганизаций.СуммаВзаиморасчетовРасход, | СтруктураЗадолженностиОрганизаций.СуммаВзаиморасчетовКонечныйОстаток, | СтруктураЗадолженностиОрганизаций.СтатьяФинансирования, | СтруктураЗадолженностиОрганизаций.КОСГУ |ПОМЕСТИТЬ СтруктураЗадолженности |ИЗ | СтруктураЗадолженностиОрганизаций КАК СтруктураЗадолженностиОрганизаций | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | НДФЛкЗачетуНачальноеСальдо.Организация, | НДФЛкЗачетуНачальноеСальдо.ФизЛицо, | НДФЛкЗачетуНачальноеСальдо.ПериодРегистрации, | НДФЛкЗачетуНачальноеСальдо.СуммаВзаиморасчетовНачальныйОстаток, | НДФЛкЗачетуНачальноеСальдо.СуммаВзаиморасчетовПриход, | НДФЛкЗачетуНачальноеСальдо.СуммаВзаиморасчетовРасход, | НДФЛкЗачетуНачальноеСальдо.СуммаВзаиморасчетовКонечныйОстаток, | НДФЛкЗачетуНачальноеСальдо.СтатьяФинансирования, | НДФЛкЗачетуНачальноеСальдо.КОСГУ |ИЗ | НДФЛкЗачетуНачальноеСальдо КАК НДФЛкЗачетуНачальноеСальдо | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | НДФЛкЗачетуКонечноеСальдо.Организация, | НДФЛкЗачетуКонечноеСальдо.ФизЛицо, | НДФЛкЗачетуКонечноеСальдо.ПериодРегистрации, | НДФЛкЗачетуКонечноеСальдо.СуммаВзаиморасчетовНачальныйОстаток, | НДФЛкЗачетуКонечноеСальдо.СуммаВзаиморасчетовПриход, | НДФЛкЗачетуКонечноеСальдо.СуммаВзаиморасчетовРасход, | НДФЛкЗачетуКонечноеСальдо.СуммаВзаиморасчетовКонечныйОстаток, | НДФЛкЗачетуКонечноеСальдо.СтатьяФинансирования, | НДФЛкЗачетуКонечноеСальдо.КОСГУ |ИЗ | НДФЛкЗачетуКонечноеСальдо КАК НДФЛкЗачетуКонечноеСальдо | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | КомпенсацияЗаЗадержкуЗП.Организация, | КомпенсацияЗаЗадержкуЗП.ФизЛицо, | КомпенсацияЗаЗадержкуЗП.ПериодРегистрации, | КомпенсацияЗаЗадержкуЗП.СуммаВзаиморасчетовНачальныйОстаток, | КомпенсацияЗаЗадержкуЗП.СуммаВзаиморасчетовПриход, | КомпенсацияЗаЗадержкуЗП.СуммаВзаиморасчетовРасход, | КомпенсацияЗаЗадержкуЗП.СуммаВзаиморасчетовКонечныйОстаток, | КомпенсацияЗаЗадержкуЗП.СтатьяФинансирования, | КомпенсацияЗаЗадержкуЗП.КОСГУ |ИЗ | КомпенсацияЗаЗадержкуЗП КАК КомпенсацияЗаЗадержкуЗП | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | НДФЛкЗачету.Организация, | НДФЛкЗачету.ФизЛицо, | НДФЛкЗачету.ПериодРегистрации, | НДФЛкЗачету.СуммаВзаиморасчетовНачальныйОстаток, | НДФЛкЗачету.СуммаВзаиморасчетовПриход, | НДФЛкЗачету.СуммаВзаиморасчетовРасход, | НДФЛкЗачету.СуммаВзаиморасчетовКонечныйОстаток, | НДФЛкЗачету.СтатьяФинансирования, | НДФЛкЗачету.КОСГУ |ИЗ | НДФЛкЗачету КАК НДФЛкЗачету |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗЛИЧНЫЕ | СтруктураЗадолженности.Физлицо КАК ФизЛицо, | СтруктураЗадолженности.Организация КАК ГоловнаяОрганизация, | КОНЕЦПЕРИОДА(СтруктураЗадолженности.ПериодРегистрации, МЕСЯЦ) КАК ДАТА |ПОМЕСТИТЬ ТаблицаДвижений |ИЗ | СтруктураЗадолженности КАК СтруктураЗадолженности |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗРЕШЕННЫЕ | ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) КАК Дата, | ЗНАЧЕНИЕ(Справочник.ФизическиеЛица.ПустаяСсылка) КАК ФизЛицо, | ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка) КАК ГоловнаяОрганизация, | ЗНАЧЕНИЕ(Справочник.СотрудникиОрганизаций.ПустаяСсылка) КАК Сотрудник, | ЗНАЧЕНИЕ(Документ.ДоговорНаВыполнениеРаботСФизЛицом.ПустаяСсылка) КАК Договор, | ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) КАК ДатаПоследнегоДвижения, | """" КАК Состояние |ПОМЕСТИТЬ РаботникиПредприятия |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ РАЗРЕШЕННЫЕ | СтруктураЗадолженности.Организация КАК Организация, | СтруктураЗадолженности.Физлицо КАК Физлицо, | СтруктураЗадолженности.ПериодРегистрации КАК ПериодРегистрации, | СУММА(СтруктураЗадолженности.СуммаВзаиморасчетовНачальныйОстаток) КАК СуммаВзаиморасчетовНачальныйОстаток, | СУММА(СтруктураЗадолженности.СуммаВзаиморасчетовПриход) КАК СуммаВзаиморасчетовПриход, | СУММА(СтруктураЗадолженности.СуммаВзаиморасчетовРасход) КАК СуммаВзаиморасчетовРасход, | СУММА(СтруктураЗадолженности.СуммаВзаиморасчетовКонечныйОстаток) КАК СуммаВзаиморасчетовКонечныйОстаток |{ВЫБРАТЬ | Организация.*, | Физлицо.*, | ПериодРегистрации, | СуммаВзаиморасчетовНачальныйОстаток, | СуммаВзаиморасчетовПриход, | СуммаВзаиморасчетовРасход, | СуммаВзаиморасчетовКонечныйОстаток} |ИЗ | СтруктураЗадолженности КАК СтруктураЗадолженности | ЛЕВОЕ СОЕДИНЕНИЕ РаботникиПредприятия КАК РаботникиПредприятия | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций | ПО РаботникиПредприятия.Сотрудник = РаботникиОрганизаций.Сотрудник | И РаботникиПредприятия.ДатаПоследнегоДвижения = РаботникиОрганизаций.Период | ПО СтруктураЗадолженности.Физлицо = РаботникиПредприятия.ФизЛицо | И СтруктураЗадолженности.Организация = РаботникиПредприятия.ГоловнаяОрганизация | И (КОНЕЦПЕРИОДА(СтруктураЗадолженности.ПериодРегистрации, МЕСЯЦ) = РаботникиПредприятия.Дата) |ГДЕ | СтруктураЗадолженности.Организация = &Организация |{ГДЕ | СтруктураЗадолженности.СуммаВзаиморасчетовНачальныйОстаток КАК СуммаВзаиморасчетовНачальныйОстаток, | СтруктураЗадолженности.СуммаВзаиморасчетовПриход КАК СуммаВзаиморасчетовПриход, | СтруктураЗадолженности.СуммаВзаиморасчетовРасход КАК СуммаВзаиморасчетовРасход, | СтруктураЗадолженности.СуммаВзаиморасчетовКонечныйОстаток КАК Сум |
|||
1
ponaroshku
21.11.11
✎
08:35
|
ууу не влезло:))
вообщем ругается на Если СтрокаДолжника.Сумма>0 Тогда Если НЕ ТекДокСтарый Тогда // эту строчку ЗаполнениеСтрокиТЧ_ЗКВ(ТекДокумент,Рез,СтрокаДолжника); Иначе СтрокаТЧ=ТекДокумент.Зарплата.Найти("ФизЛицо",Рез.ФизЛицо); Если СтрокаТЧ=Неопределено Тогда ЗаполнениеСтрокиТЧ_ЗКВ(ТекДокумент,Рез,СтрокаДолжника); ИначеЕсли СтрокаТЧ.Сумма<>СтрокаДолжника.Сумма Тогда СтрокаТЧ.Сумма=СтрокаДолжника.Сумма; КонецЕсли; КонецЕсли; КонецЕсли; Ошибка {Форма.Форма.Форма(226)}: Преобразование значения к типу Булево не может быть выполнено Если НЕ ТекДокСтарый Тогда |
|||
2
Начинающий Программер
21.11.11
✎
08:39
|
(1) "ТекДокСтарый" - я так думаю, что он не булево в данном случае.
|
|||
3
Gela
21.11.11
✎
09:02
|
код весь не читала - много букв:) но я так поняла, по регистрам меняете КОСГУ и ИФ на нужный? КОСГУ 213,225,226 на 211?
|
|||
4
ponaroshku
21.11.11
✎
09:12
|
(3) да, именно так
там кода еще больше, я постаралась максимально сжать:))) и то сжатый не влез весь |
|||
5
Gela
21.11.11
✎
13:05
|
ну если именно так, то зачем изобретать велосипед? я обработкой с ИТС "Поиск и замнена значений" без проблем все перекинула
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |