1С 7.7 ЗиК. Доработка документа "Бригадный наряд" с возможностью увидеть часы в расчетном листке

08.09.11

Задачи пользователя - Адаптация типовых решений

Маленькая доработка модуля документа "Бригадный наряд" с возможностью увидеть часы в расчетном листке. Не забудьте, когда будете заполнять документ "Бригадный наряд", поставить галочку "Учитывать отработанные часы".

 

//*************************************************

// Проверка(ОбработчикСообщений)

//

// Параметры:

//          ОбработчикСообщений - обработчик, переданный в процедуру проведения

//

// Возвращаемое значение:

//                      число 1, если провести документ можно, 0 - если введены неверные данные

//

//          Описание:

//                      Проверяет возможность проведения документа.

//

Функция Проверка(ОбработчикСообщений)



            МожноПроводить = 1;

           

            Если глПроведенВПрошлом(Контекст) = 0 Тогда

                       

                        НазваниеДока = "Документ "+ глПредставлениеДокумента(Контекст)+": ";

                        Если (ШаблонПроводки.Наименование = "Распределять пропорционально расчетной базе") Тогда

                                   МожноПроводить = 0;

                                   глДобавитьСообщение(ОбработчикСообщений, НазваниеДока+"неверно указан шаблон проводки", ТекущийДокумент(),,"ШаблонПроводки")

                        КонецЕсли;

                        Если УчетНалогаНаПрибыль.ВидРасхода=Перечисление.ВидыРасходов.ПропорциональноРаспределять Тогда

                                   МожноПроводить = 0;

                                   глДобавитьСообщение(ОбработчикСообщений, НазваниеДока+" в данных учета налога на прибыль выбран вид расхода ""Распределять пропорционально расчетной базе"".", ТекущийДокумент(),,"УчетНалогаНаПрибыль");

                        КонецЕсли;

                        Если КоличествоСтрок() = 0 Тогда

                                   глДобавитьСообщение(ОбработчикСообщений, НазваниеДока+"список сотрудников пуст.", ТекущийДокумент(),,"Сотрудник")

                        Иначе

                                   Если Итог("Результат") = 0 Тогда

                                               МожноПроводить = 0;

                                               глДобавитьСообщение(ОбработчикСообщений,"Не выполнен расчет из документа, нулевые результаты начислений.", ТекущийДокумент(),,"Результат");

                                   КонецЕсли;

                                  

                                   ВыбратьСтроки();

                                   Пока ПолучитьСтроку()=1 Цикл

                                               Если Сотрудник.Выбран()=0 Тогда

                                                           МожноПроводить = 0;

                                                           глДобавитьСообщение(ОбработчикСообщений, НазваниеДока+"в строке №"+НомерСтроки+"не выбран сотрудник", ТекущийДокумент(),,"Сотрудник")

                                               КонецЕсли;

                                   КонецЦикла;

                        КонецЕсли;

                       

            Иначе

                        глДобавитьСообщение(ОбработчикСообщений, "Документ "+глПредставлениеДокумента(Контекст)+" был проведен в одном из предыдущих расчетных периодах. Перепроведение такого документа запрещено!", ТекущийДокумент(), ,);

                        МожноПроводить = 0;

            КонецЕсли;

           

            Возврат МожноПроводить

           

КонецФункции // Проверка



//******************************************************************************

//          Предопределенная процедура

//

Процедура ОбработкаПроведения(ОбработчикСообщений)

             ГрафикРаботы = Константа.ОсновнойГрафик;

                                               Календарь = ГрафикРаботы.ОсновныеЧасы;

                                               ВсегоЧасов = Календарь.Часов(НачМесяца(ДатаДок),КонМесяца(ДатаДок));

                                               ВсегоДней = Календарь.Дней(НачМесяца(ДатаДок),КонМесяца(ДатаДок));

            // если документ содержит ошибки или проведен в прошлом периоде, то не проводим

            Если Проверка(ОбработчикСообщений) = 0 Тогда

                        СтатусВозврата(0); Возврат

            КонецЕсли;

           

            глСторнироватьДокумент(КорректируемыйДокумент, ТекущийДокумент());

           

            ЖрнЗарплата = СоздатьОбъект("ЖурналРасчетов.Зарплата");

            ТекущийГод = ДатаГод(ЖрнЗарплата.КонецТекущегоПериода());

    ДатаНачала=ЖрнЗарплата.НачалоТекущегоПериода();

    ДатаОкончания=ЖрнЗарплата.КонецТекущегоПериода();

            ВыбратьСтроки();

            Пока ПолучитьСтроку()=1 Цикл

                        Если Сотрудник.Выбран()=1  Тогда

                                   ЖрнЗарплата.УстановитьРеквизит("Рассчитана", 1);

                                   ЖрнЗарплата.УстановитьРеквизит("Фиксирована", 1);

                                    Если УчЧасы=1  Тогда

                                               ЖрнЗарплата.УстановитьРеквизит("Часы",Часы);

                                    КонецЕсли; 

                                   ЖрнЗарплата.ВвестиРасчет(Сотрудник, ВидРасчета.ОплатаПоНаряду, ДатаДок, ДатаДок, Результат);

                                   Если ДатаГод(ДатаДок) <> ТекущийГод Тогда

                                               глВводЗаписейНДФЛ(Сотрудник,ВидРасчета.НДФЛ,ВидРасчета.НДФЛУдержанный,ДатаГод(ДатаДок),ТекущийГод);

                                   КонецЕсли;

                        КонецЕсли;

            КонецЦикла

           

КонецПроцедуры // ОбработкаПроведения

 

 

См. также

Улучшенная обработка "Внешние печатные формы" для типовых конфигураций на базе 1С 7.7

Печатные формы Адаптация типовых решений Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Приятное улучшение обработки "Внешние печатные формы" для типовых конфигураций на базе 1С 7.7 для более комфортной работы с "любимой семерочкой".

1 стартмани

04.02.2022    3200    1    igor7777    0    

3

Расчет страховых взносов в 1С 7.7 "Учет и отчетность предпринимателя, ред. 1.2" с апреля 2020

Адаптация типовых решений Платформа 1С v7.7 Конфигурации 1cv7 Россия Бухгалтерский учет ФОМС, ЕФС Бесплатно (free)

В этой статье описано, какие небольшие изменения можно внести в модуль документа Начисление налогов с ФОТ, чтобы правильно рассчитывались страховые взносы с 1 апреля 2020 г.

09.04.2020    19676    Юджин58    39    

5

Дистрибьюция 7.7. Часть 1. Жизненный цикл заявки покупателя. Одна заявка покупателя, много адресов доставки.

Адаптация типовых решений Платформа 1С v7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Управленческий учет Бесплатно (free)

Описан способ работы с учетом расписания с приоритетными покупателями - торговыми сетями (основными покупателями) в торговой или комплексной учетной системе на 1С 7.7. Множественная заявка покупателя на несколько торговых точек.

14.10.2019    6009    ksnik    14    

3

Как в торговле 7.7 печатать код ТНВЭД в счет-фактуре

Операции по ВЭД Адаптация типовых решений Оперативный учет 7.7 1С:Торговля и склад 7.7 Россия Бухгалтерский учет НДС Бесплатно (free)

В данной статье хотел поделиться опытом, как в Торговле 7.7 ( релиз 994) сделать возможность выводить код ТНВЭД в печатную форму счета-фактуры. Сразу скажу, что нужно это только тем, кто осуществляет экспорт в страны таможенного союза. Остальные могут не волноваться.

15.11.2017    11816    AndKovalchuk    0    

1

Предельные базы взносов в ПФР, ФСС, ФФОМС 2015 в 1С: Бухгалтерия 7.7

Зарплата Адаптация типовых решений Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 Россия Бухгалтерский учет Абонемент ($m)

Реализация Постановления Правительства РФ 1316 от 04.12.14 для типовой конфигурации "Бухгалтерский учет 7.7" рел. 7.70.590

1 стартмани

31.12.2014    23928    9    Sergey1CSpb    2    

0
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
0. Ироида 8 09.09.11 10:16 Сейчас в теме
Маленькая доработка модуля документа "Бригадный наряд" с возможностью увидеть часы в расчетном листке.
Не забудьте, когда будете заполнять документ "Бригадный наряд", поставить галочку "Учитывать отработанные часы".



Перейти к публикации

1. fishca 1254 09.09.11 10:16 Сейчас в теме
Классная разработка есть по оформлению исходного кода, было бы не грех ею воспользоваться, лежит здесь
2. Арчибальд 2706 09.09.11 10:49 Сейчас в теме
(1) Оно так. Но все равно плюс. ;)
3. fishca 1254 09.09.11 10:55 Сейчас в теме
(2) а почему бы и нет, собственно ;)
10. 2011b11 12.11.12 11:32 Сейчас в теме
<<?>>/*************************************************
{Документ.НарядБригадный.Модуль Документа(1)}: Неопознанный оператор
Модуль не скомпилирован!
У меня вот такая ошибка что сделать?
11. Ироида 8 12.11.12 13:44 Сейчас в теме
(10) 2011b11, должно быть //********* (два слеша, а у вас один)
4. Pilot741 09.09.11 11:41 Сейчас в теме
5. artbear 1448 09.09.11 18:06 Сейчас в теме
Баян :(
Я подобный код еще в 2001/2002 годах юзал :(
6. Ироида 8 12.09.11 11:20 Сейчас в теме
artbear пишет:

Баян :(
Я подобный код еще в 2001/2002 годах юзал :(


Вот я этого и опасалась. Захочешь кому-нибудь помочь - помидорами закидают :)
Одно утешение - Pilot741 доволен.
7. tdk22 14.09.11 21:45 Сейчас в теме
:idea: Очень бы хотелось увидеть пободное для 8-ки
8. 2011b11 28.09.11 09:00 Сейчас в теме
Спасибо, очень помогло
9. vboston 8 26.04.12 18:02 Сейчас в теме
Спасибо большое, неплохо бы было то же самое увидеть по бригадным и индивидуальным нарядам
12. u_n_k_n_o_w_n 34 25.11.15 06:37 Сейчас в теме
Добрый день!

Автору +.

Прекрасный подход к реализации задачи.

Спасибо.
Оставьте свое сообщение