|   |   | 
| 
 | Создание отчёта вычисления зарплаты. | ☑ | ||
|---|---|---|---|---|
| 0
    
        cobra152 19.06.23✎ 19:26 | 
        Доброго времени суток товарищи программисты. Возникла проблема с созданием не стандартного отчёта вычисления заработной платы. Прошу помочь специалистов новичку, буду благодарен. 
 Суть такова, есть приложение для администрирование таксопарка. В приложении имеются такие справочники как: "Должности" и "Тарифы", а так же документ Заказ". В ложностях есть должность "Водитель такси" с процентной ЗП 0.8 (80%), Справочник.Должности.ЗаработнаяПлата, в тарифах есть разные тарифы с разной стоимостью, Справочник.Тарифы.Стоимость, в заказах есть сотрудники которые принимали заказы, Документ.заказ.ФИОВодителя. Необходимо в отчёте рассчитывать заработную плату определённого сотрудника, с определённой даты учитывая что тарифы могли быть разные и его процентную ставку. Вывод должен выглядеть так, все заказы за определённый период времени и итог по зарплате с учётом процентной ставки. (Старался расписать очень подробно, что бы не было много вопросов). | |||
| 1
    
        Волшебник 19.06.23✎ 19:29 | 
        Зарплату должен считать документ или обработка, а результат загонять в регистры. Отчёт должен вытаскивать уже рассчитанные данные.     | |||
| 2
    
        cobra152 19.06.23✎ 19:34 | 
        Можно по подробнее как это реализовать?     | |||
| 3
    
        Злопчинский 19.06.23✎ 19:52 | 
        (2) головой и руками, ясен пень. 
 Задача в целом понятна. Неясно в чем лично у тебя проблемы с решением задачи... | |||
| 4
    
        Злопчинский 19.06.23✎ 19:53 | 
        - У вас вопрос или вы не знаете как вести бухгалтерию?! 
 - у меня вопрос: как вести бухгалтерию? | |||
| 5
    
        cobra152 19.06.23✎ 19:56 | 
        Вообще не работал с бухгалтерией, поэтому и думал реализовать расчёт ЗП через отчёт.     | |||
| 6
    
        Гена 19.06.23✎ 20:07 | 
        (4) Здесь не нужна бухгалтерия. Бухгалтерию и зарплату ведут в другой программе. Просто хотят из приложения для таксопарка вытаскивать сводно заработок каждого таксиста за месяц без ненужной им разбивки по заказам. Май. Иванов = 56442, Петров = 42877, Сидоров = 84021     | |||
| 7
    
        Гена 19.06.23✎ 20:08 | 
        Потом в том же ЗУПе расчётчица просто набьёт эти суммы в доке Начисление зарплаты.     | |||
| 8
    
        welwel 19.06.23✎ 20:10 | 
        (5) у Станислава Митичкина, который Волшебник , была по-моему книжка для начинающих, в которой описывалось, как сделать простую зарплатную программу. Емнип она даже по версии 7.7 была, но это не столь важно, так как вам это для понимания общего подхода.     | |||
| 9
    
        welwel 19.06.23✎ 20:17 | ||||
| 10
    
        cobra152 19.06.23✎ 20:20 | 
        Надо будет прочитать летом данную книжку что бы подкачать навыки и узнать новое. На счёт моей задачи, я думаю сделать просчёт зарплаты через сумму тарифов всех записей с определённым водителем, после эту сумму перемножить на нужный процент. Или же мне всё же пойти разбираться с обработками как порекомендовал Волшебник.     | |||
| 11
    
        welwel 19.06.23✎ 20:27 | 
        (10) имхо желательно расчёт зарплаты фиксировать в документе, так как исходные данные могут со временем меняться (в том числе задним числом), а при формировании ведомости за какой-либо прошлый период желательно, чтоб выводились те же самые суммы, что и при первоначальном расчёте.     | |||
| 12
    
        Гена 19.06.23✎ 20:27 | 
        (10) Я бы пошёл по пути ежедневного нового документа, предложенного в (1), где каждая строка ФИО и сумма, а по клику по сумме табличка заказ-сумма раскрывается при желании. Расчёт внутри модуля. Как-то так.     | |||
| 13
    
        АгентБезопасной Нацио 19.06.23✎ 20:27 | 
        (10) "Мы вот тут решили научиться программировать. ПОсоветуйте, как лучше учиться программировать - в кодах, или в ASCII?"©     | |||
| 14
    
        АгентБезопасной Нацио 19.06.23✎ 20:29 | 
        (12) а умножать внутре модуля будешь, или потом? зы. а если унутре дня водятел ФИО сменит - женится, там, или замуж выйдет?     | |||
| 15
    
        Гена 19.06.23✎ 20:32 | 
        (14) умножать, конечно, унутре модуля... ну а для смены ФИО есть уникальный табельный номер )     | |||
| 16
    
        cobra152 19.06.23✎ 20:37 | 
        На счёт документа я не много уловил мысль, создать документ где будет суммироваться вся выручка за день и перемножаться на процентную ставку. А в отчёте вся эта информация будет выводиться, и можно было бы посмотреть выручку за день или за не сколько дней. На счёт ФИО, у каждого есть своё код, поэтому если на то пошло, то можно использовать уникальный номер водителя.     | |||
| 17
    
        cobra152 19.06.23✎ 20:39 | 
        Встаёт тогда другая задача, написать код для модуля документа...не знаю получится ли у меня, но попробую ибо в написании кода в 1с я ещё не опытен     | |||
| 18
    
        Гена 19.06.23✎ 20:43 | 
        (16) Упс! Так база = выручка? И зарплата от неё ажник 80% ? Что-то Вы нас тут за дураков держите )
 Не бывает такого таксопарка. Скорее похоже на фирму-посредника, которая для частников ловит и передаёт заказы. И те вчёрную... Не-е-е, мы тут все законопослушные, честные, искренние и пушистые. | |||
| 19
    
        Гена 19.06.23✎ 20:46 | 
        Вот я, например, чту Налоговый кодекс... это моя слабость...     | |||
| 20
    
        Злопчинский 19.06.23✎ 20:46 | 
        (6) это был сарказм     | |||
| 21
    
        cobra152 19.06.23✎ 20:51 | 
        Ничего не законного нет, возможно мы не поняли друг друга. Приложение я делаю для своего учебного проекта. Как я себе представляю работу данного таксопарка, поступает телефонный заказ, оператор сообщает о заказе, заказ берёт один из водителей таксопарка. Водитель по окончанию рабочего дня сдаёт выручку в кассу, где 80% выручки его заработанные деньги. Остальное на содержание и развитие таксопарка. Суть приложения это хранилище данных о всех заказах, сотрудниках, автомобилях, расчёт ЗП водителей.     | |||
| 22
    
        cobra152 19.06.23✎ 20:51 | 
        Звучит по старинке, но это ведь не для продажи, а только в учебных целях     | |||
| 23
    
        АгентБезопасной Нацио 19.06.23✎ 20:52 | 
        (21) если водитель сдал деньги - это уже не водителя деньги. это кого надо деньги!©     | |||
| 24
    
        cobra152 19.06.23✎ 21:06 | 
        https://imgur.com/hB55z7H
 Накидал вот такую вот форму. Поможете написать модуль? | |||
| 25
    
        Злопчинский 19.06.23✎ 21:17 | 
        (24) для УЧЕБНОГО Проекта - надо писать самому, учиться. Если самому трудно - то обучение платное обычно. Репетиторы даром не работают... ;-)     | |||
| 26
    
        Злопчинский 19.06.23✎ 21:19 | 
        (24) вводить 100 документов на 100 сотрудников - нужны веские основания.
 может быть так что проще: один документ за день, в ТЧ - строки по сторудникам | |||
| 27
    
        cobra152 19.06.23✎ 21:26 | 
        Ну тут по факту, завтра тогда буду думать, потом отпишу как успехи.     | |||
| 28
    
        Злопчинский 19.06.23✎ 21:29 | 
        если один документ = один сотрудник - удобно в списке сразу искать и выводить. будет типа сразу и список и типа "отчет" плоский     | |||
| 29
    
        Волшебник 19.06.23✎ 21:40 | 
        (26) Тогда придётся применять циклы...     | |||
| 30
    
        Злопчинский 20.06.23✎ 01:08 | 
        (29) ..а в циклах - запросы...     | |||
| 31
    
        cobra152 20.06.23✎ 18:13 | 
        Ну я тут что-то натыкал так сказать. Но много ошибок, поможете исправить? 
 &НаКлиенте Процедура РассчитатьЗаработнуюПлату(ЭлементыФормы) Документ = ЭлементыФормы.ТекущийОбъект; Сотрудник = Документ.Сотрудник; ДатаРаботы = Документ.ДатаРаботы; КоличествоЗаказов = 0; ЗаработаннаяСумма = 0; ВыборкаЗаказов = ВыбратьПоУсловию(Документ.Заказ, "ДатаЗаказа = &1 И ФИОВодителя = &2", ДатаРаботы, Сотрудник); Пока ВыборкаЗаказов.Следующий() Цикл КоличествоЗаказов = КоличествоЗаказов + 1; ЗаработаннаяСумма = ЗаработаннаяСумма + ВыборкаЗаказов.СтоимостьТарифа; КонецЦикла; ЗаработнаяПлата = Справочники.Должности.НайтиПоНаименованию("Водитель такси").ЗаработнаяПлата; ЗаработаннаяПлата = ЗаработаннаяСумма * ЗаработнаяПлата; Документ.КоличествоЗаказов = КоличествоЗаказов; Документ.ЗаработаннаяСумма = ЗаработаннаяСумма; Документ.ЗаработаннаяПлата = ЗаработаннаяПлата; КонецПроцедуры &НаКлиенте Процедура ПриИзмененииСотрудника(ЭлементыФормы) РассчитатьЗаработнуюПлату(ЭлементыФормы); КонецПроцедуры &НаКлиенте Процедура ПриИзмененииДатыРаботы(ЭлементыФормы) РассчитатьЗаработнуюПлату(ЭлементыФормы); КонецПроцедуры {Документ.ЗаработнаяПлатаВодителя.Форма.ФормаДокумента.Форма(25,19)}: Переменная не определена (Справочники) ЗаработнаяПлата = <<?>>Справочники.Должности.НайтиПоНаименованию("Водитель такси").ЗаработнаяПлата; (Проверка: Тонкий клиент) {Документ.ЗаработнаяПлатаВодителя.Форма.ФормаДокумента.Форма(14,18)}: Процедура или функция с указанным именем не определена (ВыбратьПоУсловию) ВыборкаЗаказов = <<?>>ВыбратьПоУсловию(Документ.Заказ, (Проверка: Тонкий клиент) | |||
| 32
    
        breezee 20.06.23✎ 18:33 | 
        ЗП надо считать на периодических расчетах. Но Вас пока рано, возьмите другую задачу     | |||
| 33
    
        asady 20.06.23✎ 18:36 | 
        (32) то что ТС называет "зарплата"  - это скорее всего некий показатель - его можно рассчитывать на простом регистре накопления -     | |||
| 34
    
        breezee 20.06.23✎ 18:39 | 
        (33) Нет, тогда он не познает боль которую хотели до нас донести разработчики типового ЗУПа. 10 круг ада))     | |||
| 35
    
        cobra152 20.06.23✎ 18:43 | 
        я уже запутался что мне использовать и надо ли мне вообще считать зарплату или пойти придумать какую-либо другую функцию для приложения.     | |||
| 36
    
        breezee 20.06.23✎ 18:49 | 
        Начните с простого, приход и расход товаров, освоите больше по дороге. Может примеры найдете. Если считать ЗП правильно - это прям сложно     | |||
| 37
    
        Волшебник 20.06.23✎ 19:08 | 
        (36) Это скучно. Зарплата на регистрах расчёта интереснее.     | |||
| 38
    
        Волшебник 20.06.23✎ 19:11 | 
        (31) Выключите генератор бреда и включите мозги     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |