Готовимся к экзамену 1С: Специалист по платформе 8.х. Решаем расчётные задачи.

26.09.12

Разработка - Подготовка к аттестации

Цель данной публикации - познакомить начинающих программистов с тем что происходит "внутри программы" при решении расчётных задач. И так как подобных публикаций я нигде не встречал - я решил восполнить этот пробел. На примере решения одной задачи, похожей на экзаменационную задачу, вы сможете быстро окунуться в атмосферу сложных периодических расчётов и понять, что не такие они уж и сложные :)
И самое ГЛАВНОЕ: вы поймёте как нужно думать и в каком направлении, какие могут возникнуть сложности, на что надо обратить внимание и как "разложить задачу по полочкам".

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
База с примером
.dt 175,38Kb
454
454 Скачать (1 SM) Купить за 1 850 руб.
Дополнительные материалы
.rar 3,22Mb
190
190 Скачать (1 SM) Купить за 1 850 руб.

Сразу хочу предупредить: эта публикация не сможет дать вам в полном объеме необходимый багаж знаний! Автор не ставит перед собой такую цель, да и это просто физически невозможно. Для более глубого изучения платформы хочу порекомендовать вам посетить курсы (очные или дистанционные) фирмы 1С или фирм-партнёров:

Учебный центр №1

http://www.1c.ru/rus/partners/training/uc1/courses.jsp?type=44

Учебный центр №3

http://www.1c-uc3.ru/dist.html

И прочитать следующие книги:

Радченко М. "Практическое пособие разработчика"

Хрусталева Е.Ю., Кухлевский Д.С., Козырев Д.В., Габец А.П. «Реализация прикладных задач в системе 1С Предприятие 8.2».


Начнём:

1. Условия задачи на рис.1.

2. Сначала определим сколько видов расчета (ВР) нам надо задействовать.

- фиксированная сумма

- надбавка

- компенсация

- пособие (больничный)

3. Теперь разберёмся где они будут храниться, в каких планах видов расчёта (ПВР).

- фиксированная сумма: это просто сумма денег, она неизменна, значит ей не нужен период действия. Для таких ВР обычно используется ПВР Дополнительные начисления. У этого ПВР должен быть снят флажок – Использует период действия.

- надбавка: тут уже надо учитывать фактически отработанные часы, а они могут меняться, ведь сотрудник может болеть например. Значит этот ВР должен обладать периодом действия, помещаем его в ПВР Основные начисления (не забудьте проверить флаг - Использует период действия).

- компенсация: этот ВР зависит не от того сколько отработал сотрудник, а от того сколько проехал его автомобиль. Поэтому компенсацию помещаем в ПВР Дополнительные начисления.

- пособие (больничный): с пособием всё просто, нам нужно знать сколько дней болел сотрудник, и значит будет период действия (ПВР Основные начисления).

4. Какие нужны регистры. Итак мы определили что нужно два ПВР. Создаем два регистра расчетов с аналогичными названиями. Привязываем к регистрам соответствующие ПВР, настраиваем периоды действия и график (ПВР Основные начисления).

5. Какие нужны графики. С видами расчетов в целом разобрались, с ПВР тоже. Теперь займемся теми ВР которые с периодом действия. Нам нужно определить какой график (или графики) для них использовать.

- надбавка: сказано что каждый сотрудник будет работать по своему графику, значит можно связать измерение регистра расчета с измерением регистра сведений (РС) Графики работы («Связь с графиком» в свойствах измерения).

- пособие (больничный): тут просто, чётко сказано что по пятидневке.

А вот теперь у нас получилась проблема: график будет всегда браться «по сотруднику» (мы ведь его связали с регистром графиков), но а нам же еще нужно для пособия использовать график – Пятидневка. Решим эту проблему за счёт второго ресурса в РС Графики работы. (Прим. автора: про другие способы связи с графиками можно узнать здесь, либо более подробно - на курсах 1С). 

6. В чем учет времени. Какие будут графики – мы определили, а теперь нужно посмотреть, а в чём учет рабочего времени будет: в часах, в днях, или может в минутах? Что хранить в графиках?

Сказано что надбавка будет по фактически отработанным часам считаться. Значит нужны часы. А вот пособие (больничный) считается по дням (график - пятидневка). Значит еще нужно дни по пятидневке учитывать. И также сказано что для пособия нужны рабочие дни в прошлом месяце,  и эти дни уже не по пятидневке, а по графику сотрудника. Значит еще нужны дни по графику сотрудника. Итого получилось три ресурса: Часы, Дни по пятидневке и Дни по графику сотрудника. Создадим соответствующие ресурсы в РС Графики работы. Доработаем обработку ЗаполнениеГрафика (см. Модуль объекта).

7. База. Теперь разберёмся, а базу для расчетов нам нужно получать или нет. Сказано что для пособия (больничный) нужна сумма за прошлый месяц. Это значит что нужно получать базу. А по какому регистру расчетов? Сказано что базой для пособия будет гарантированный оклад (фиксированная сумма), который у нас хранится в ПВР Дополнительные начисления (регистр расчета ДополнительныеНачисления), значит нужно указать в настройках ПВР Основные начисления (где пособие), что база будет браться из ПВР Дополнительные начисления (переключатель - Зависимость от базы и флаг - Базовые планы видов расчета). Переключатель поставим в положение - Зависит по периоду регистрации. Почему так? Система будет смотреть попадает ли период регистрации фиксированной суммы в указанный вами у пособия базовый период. А так как фиксированная сумма не обладает периодом действия, а только периодом регистрации, то вполне логично его и "ловить" (более подробно можно узнать из книг, либо на курсах 1С).

8. Теперь посмотрим еще нужно для задачи:

- Фиксированная сумма. Поместим в константы («Размер суммы одинаков для всех сотрудников и не меняется в течение расчетного периода»);

- Часовая ставка для надбавки. Она может меняться каждый день, поэтому будем хранить её в регистре сведений, периодичность – В пределах дня («Она может изменяться не чаще, чем один раз в день, но берется на начало расчетного периода»);

- Величина пробега для автомобиля. Напомню что сотрудники могут ездить на разных автомобилях («В зависимости от величины пробега автомобиля»). Величину пробега будем накапливать документами «Пробег» и хранить в регистре накопления;

- Пособие (больничный) может быть введено задним числом, то есть в другом периоде («данные о болезни могут вводиться в систему задним числом»). Сделаем в модуле документа сторно-записи;

- Разбивать ВР на периоды не требуется («все данные вводятся только в пределах одного месяца»);

- Нужно предусмотреть ввод суммы в документ Начисление зарплаты («некоторой суммы, указанной в документе «Начисление зарплаты» и выплачиваемой за каждые 100 километров пробега»). У нас есть в документе реквизит табличной части на этот случай;

- Пользователь будет сам создавать виды расчетов («предоставить пользователю возможность самостоятельно создавать новые виды расчетов»). Создадим реквизиты «Способ» в ПВР, тип – перечисление СпособРасчета.

9. Разбор кода. А теперь посмотрим на код. У нас два модуля – модуль документа Начисление зарплаты и общий модуль – Расчет. В модуле документа мы делаем предварительные записи по регистрам (получение данных, формирование периодов действия и т.д.), в общем – уже непосредственно расчёты (более подробно вы можете узнать из книг, либо на курсах 1С). Посмотрим на код модуля документа.

10. Модуль документа. Для удобства восприятия и отладки, автор создал несколько табличных частей в документе, отдельно для каждого ПВР. Сначала идёт запрос по табличной части Основные начисления, параметром передаем ссылку на документ. По результатам запроса делаем записи в регистр, записываем период действия (напомню, у этого регистра есть период действия), далее проверяем Способ расчета (способ расчета пользователь будет указывать для вида расчета в режиме 1С: Предприятие), если способ расчета Надбавка – записываем в Параметр (это реквизит регистра расчета)  часовую ставку. Если способ расчета Больничный – указываем базовый период (прошлый месяц). Напомню, базовый период указывается для того чтобы получить базу (сумму для расчетов) за какой-то период.

После этого формируем сторно-записи, если они есть (более подробно о назначении сторно-записей можно прочитать в «Реализации прикладных задач…»).

И наконец делаем запрос по табличной части Дополнительные начисления. Если способ расчета Фиксированная сумма – сразу записываем результат из константы, он у нас меняться не будет. А если способ Компенсация, тогда извлечем, соединением по сотруднику, из регистра накопления автомобили на которых ездил сотрудник в течении месяца (1), пробег этих автомобилей (2), и размер компенсации для каждых 100 км пробега, который у нас заполняется пользователем в документе Начисление зарплаты (3).

После записей по регистрам вызовем процедуры расчета из общего модуля Расчет.

11. Общий модуль Расчет. Теперь когда у нас сделаны предварительные записи - сформированы периоды действия (надбавка может быть вытеснена больничным), сторно-записи (если больничный в другом периоде), собраны нужные для расчетов данные (записаны в реквизиты Параметр, Параметр1) – приступим к расчетам (напомню, нам нужно 4-е вида расчетов произвести, см. п. 2):

- Результаты по фиксированным суммам уже записан.

- Рассчитываем результат по Компенсациям: пробег каждого в отдельности автомобиля (Параметр) делим на 100 км, получаем целое число (кол-во «кусков» по 100 км) и умножаем на сумму из документа (Параметр1).

- Рассчитываем результат по Надбавкам: обращаемся к таблице ДанныеГрафика (нельзя брать данные графика из регистра сведений), извлекаем из нее количество фактически отработанных часов (ЗначениеФактическийПериодДействия КАК ФактЧасы). Разберём что есть «ЗначениеФактическийПериодДействия». Первая часть «Значение» это ни что иное как название ресурса из регистра сведений Графики работы, ресурса в котором хранятся часы, а вторая часть – «ФактическийПериодДействия» - значит что мы получим значение часов после всех вытеснений (в нашем случае вытеснение делает только больничный, но может быть например, и невыход, прогул, и прочее).  Умножим ФактЧасы на значение реквизита Параметр (напомню, туда мы записали часовую ставку одинаковую для всех сотрудников), и получим результат.

- Рассчитаем последний ВР – Пособие (больничный): для этого нам нужно половину оклада (50%) за прошлый месяц разделить на количество рабочих дней в прошлом месяце (получим среднюю дневную ставку) и умножить на количество дней болезни. Количество дней болезни мы получим вот так: ЗначениеДниПятидневкаФактическийПериодДействия КАК ДниПятидневка. Второй ресурс регистра сведений Графики работы (ЗначениеДниПятидневка) хранит рабочие дни по пятидневке, и значит мы получим фактически проведённые на больничном дни. Далее, сумму оклада прошлого месяца (ЕСТЬNULL(ОсновныеНачисленияБазаДополнительныеНачисления.РезультатБаза, 0) КАК База) нам надо получить из другой таблицы -  ОсновныеНачисленияБазаДополнительныеНачисления. Название говорит само за себя – для видов расчета из ОсновныеНачисления (для больничного) будет взята база из регистра ДополнительныеНачисления (фиксированная сумма). Не забывайте про проверку на NULL, ведь базы может и не быть. И наконец, рабочие дни прошлого месяца. Получим их вот так: ОсновныеНачисленияДанныеГрафика.ЗначениеДниБазовыйПериод КАК РабДни. Третий ресурс регистра сведений График работы «ЗначениеДни» хранит рабочие дни по графику сотрудника, «БазовыйПериод» - указывает что дни будут взяты за указанный базовый период - за прошлый месяц (период между БазовыйПериодНачало и БазовыйПериодКонец). Вот мы и получили результаты по Пособиям. Соответственно по сторно-записям делаем результаты со знаком «минус». 

12. Дополнительно: запросы в общем модуле нужно делать по каждому виду расчета (способу) отдельно, в этом решении не реализовано. Также не учтены приоритеты, из моего опыта, на экзаменационных задачах это не требуется если вы правильно записываете виды расчетов. Но что такое «приоритеты» вы должны знать, это важно. И еще обратите внимание как делается соединение таблиц в запросе по номеру строки.

13. Самая интересная часть – тестирование:

- нужно заполнить графики;

- нужно заполнить виды расчетов (указать вытесняющие, базовые и ведущие, если требуется);

- нужно ввести фиксированную сумму за март месяц, чтобы она попала в базу пособия  и надбавку (тоже за март), чтобы посмотреть вытеснение ее пособием и создание сторно-записей (документ № 3);

- нужно ввести пособие за апрель, посмотреть вытесняет ли оно надбавку, создает ли сторно-записи (документ № 4);

- нужно ввести документы Пробег за март. Запишем в регистр накопления пробеги автомобилей за период;

- нужно ввести компенсации за март (документ № 1);

14. Типичные ошибки при тестировании:

- нет данных графика (создать, заполнить, сделать связь измерения/реквизита с графиком);

- нет базы (сделать настройку ПВР-ов, указать базовые виды расчетов, указать базовый период, указать нужную таблицу в запросе и проверить что берётся в запросе из этой таблицы).

15. Посмотрите как создаются отчеты. ПробегКомпенсации и НачисленияСотрудникам.

16. Подводим итоги:

- в первую очередь нужно определить какие виды расчетов будут, где они будут храниться и как будут взаимодействовать между собой

- потом графики и база

- потом дополнительные данные (регистры сведений, регистры накопления, константы и т.д.)

- дальше написание кода и тестирование


Желаю удачи!

 

Общий перечень требований к экзамену 1С: Специалист и рассмотрение типичных ошибок.

Бизнес-процессы для экзамена 1С: Специалист.


Новое (12.05.2012). Добавлены дополнительные материалы в rar-архиве: несколько решенных задач и краткое описание того что в них. Например, вы можете посмотреть: в какой задаче есть перерасчеты, где есть диаграмма Ганта, а где разбитие на периоды. Прошу понять, эти задачи автор решал в процессе подготовки к экзамену и их решения не идеальны. Но не переживайте на этот счёт, после того как вы прорешаете штук 20 задач, у вас сформируется правильное представление о многих вещах.





См. также

Зарплата Регламентированный учет и отчетность Кадровый учет Обновление 1С Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Зарплата и Управление Персоналом 2.5 Бухгалтерский учет Налоговый учет Управленческий учет Акцизы ЕНВД ЕСН Земельный налог ИП, ПБОЮЛ, КФХ Налог на имущество Налог на прибыль НДС НДФЛ ФОМС, ЕФС Транспортный налог УСН ПСН (патентная система налогообложения) Платные (руб)

Обновления для конфигураций: КА 1.1; ЗУП 2.5; БУХ 2.0; КА 1.1 Комплексная автоматизация торговли алкогольной продукцией; КА 1.1 Комплексный учет сельскохозяйственного предприятия

27900 руб.

01.04.2020    147099    649    360    

235

Внешние источники данных Зарплата Бюджетный учет Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 7.хх учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

48000 руб.

24.04.2017    51027    100    165    

89

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 8 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

84000 руб.

19.08.2020    25029    23    1    

25

Зарплата Производство готовой продукции (работ, услуг) Учет рабочего времени Рабочее место Бизнес-аналитик Пользователь Руководитель проекта Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Торговля и склад 7.7 Бытовые услуги, сервис Оптовая торговля, дистрибуция, логистика Электротехника и микроэлектроника Управленческий учет Платные (руб)

Модуль или расширение «Сервисный центр для 1С» позволяет принимать в ремонт оборудование (компьютеры, бытовая техника и т.п.), оформлять заявки инженеров на посещение клиентов и вести начисление заработной платы для сотрудников. Позволяет наладить автоматизированный учет в сервисном центре на уже существующей базе.

14800 руб.

01.11.2012    94134    115    1    

117

SALE! 20%

Зарплата Роли и права Системный администратор Бухгалтер Платформа 1С v8.3 Бухгалтерский учет Управление правами 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х Молдова Россия Казахстан Бухгалтерский учет Платные (руб)

Расширение позволяет максимально полно ограничить доступ пользователей к данным по заработной плате, а именно закрывает доступ к документам начисления и выплаты заработной платы, не позволяет просматривать бухгалтерские отчеты по счету учета зарплаты а также убирает зарплатные проводки из журнала проводок. Расширение запрещает просматривать платежные документы на выплату зарплаты, так же не доступны регламентные отчеты в ПФР и ИФНС. Расширение предлагает готовые настроенные профили "Бухгалтер без зарплаты", "Только просмотр без зарплаты".

5940 4752 руб.

27.05.2021    37567    264    92    

205

Перенос данных 1C Зарплата Бюджетный учет Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Государственные, бюджетные структуры Россия Бюджетный учет Платные (руб)

Обработки для быстрого перехода с конфигураций «КАМИН:Расчет зарплаты для бюджетных учреждений 3.5» и «КАМИН:Зарплата для бюджетных учреждений 5.5» на конфигурацию «Зарплата и кадры государственного учреждения».

12000 руб.

28.07.2016    60710    153    141    

129

SALE! 30%

Зарплата Программист Бизнес-аналитик Бухгалтер Платформа 1С v8.3 1С:Зарплата и кадры государственного учреждения 3 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

При заполнении ведомости на выплату зарплаты вылазят задолженности прошлых периодов, которых быть не должно? Наша обработка позволяется убрать эти доходы прошлых периодов за пару секунд. Больше не нужно тратить часы на анализ каждого такого случая.

33600 23520 руб.

14.09.2022    15739    70    26    

72
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. vbaran 50 10.05.12 22:41 Сейчас в теме
Рис.1, к сожалению не отображается :cry:
2. mrdug 763 10.05.12 23:30 Сейчас в теме
(1) эта задача похожа на 3.36 из сборника. С небольшими изменениями... Как вариант, попробуйте в другом браузере открыть.
user712426; +1 Ответить
3. boln 1041 20.05.12 15:53 Сейчас в теме
Неплохо. Толково изложено. А то часто встречаешь тут такие "советы по решению расчетных задач", что впору подойти к аффтару и сопли вытереть :)
4. STEPPRK 29 24.05.12 11:00 Сейчас в теме
5. XelOla 18 24.05.12 13:54 Сейчас в теме
6. revril 28.05.12 11:05 Сейчас в теме
Познавательно!Спасибо за статью!
7. elena_77 30.05.12 16:01 Сейчас в теме
Статью прочла. Спасибо. Познавательно.
8. jiggli 01.06.12 10:48 Сейчас в теме
9. colco 14 05.06.12 11:43 Сейчас в теме
Может я соберусь уже экзамен сдать наконец, а то все некогда))
10. fnv 16.10.12 08:16 Сейчас в теме
11. nalivai-chai 693 20.10.12 14:10 Сейчас в теме
1. Размер фиксированной суммы денег "не меняется в течении расчетного периода". Расчетный период - месяц. Следовательно, размер фиксированной суммы, по хорошему, хранить бы в регистре сведений с периодичностью месяц. А не в константе - это плохой вариант.

2. Структуру регистра сведений графика можно было бы оставить стандартной. Сделать два измерения "График", "Сотрудник" и один ресурс "Значение". Для связи с графиком в регистре расчета можно было бы использовать реквизиты "График" и, например, "СотрудникГрафик". Это позволило бы сделать решение задачи проще и яснее. Когда нужно по пятидневке получить гарфик - для связи с графиком заполняем, реквизит график и оставляем пустым реквизит "СотрудникГрфик", а когда нужно по сотруднику - то заполняем только реквизит "СотрудникГрафик".

3. Фирма 1С дала хороший пример решения расчетной задачи, предельно лаконичный и простой. Этому примеру можно следовать во всех задачах из сборника. И тогда проще будет уложиться в ограниченное время на экзамене.

4. К своим словам прикрепляю решение задачи.
Прикрепленные файлы:
nalivai-chai.dt
12. mrdug 763 20.10.12 19:09 Сейчас в теме
(11) nalivai-chai, стояла задача показать связь между регистром сведений и регистром расчета, а не сделать задачу "проще и яснее".
13. nalivai-chai 693 20.10.12 19:39 Сейчас в теме
(12) mrdug, статья хорошая и нужная. Может и решение самой задачи не так важно.
Тем не менее, учится лучше на "простом и ясном".
14. nalivai-chai 693 20.10.12 20:32 Сейчас в теме
Часто встречающаяся ошибка:

Нет связи с графиком в регистре расчета или такая связь задана неверно. Например, в измерении вместо реквизита или наоборот. (1.0).

Вы связь с графиком в регистре расчета задаете через измерение регистра расчета - это -1 балл. Когда для данной задачи правильно связь сделать через реквизиты, т.к. используется график "пятидневка", который никак не связан с сотрудниками.
Уверен в том, что правильно использовать два реквизита для связи с графиком и сотрудником.
Можно использовать составного типа реквизит в РР и измерение в РС, но мне кажется это не правильно методически. Так же как и Ваш вариант, который отрабатывает правильно, но сомневаюсь в правильности его использования.

Ваше пояснение (http://infostart.ru/public/126813/) к данному пункту "часто встречающихся ошибок" увы неправильное: "Тут довольно просто, какие измерения в регистре сведений Графики работы – такая и будет связь". Не все так просто. И такая связь не следуют автоматически из совпадения измерений. Во всем должен быть прикладной смысл.

Когда можно сделать связь между Измерением "Сотрудник" регистра сведений "Графики работы" и Измерением "Сотрудник" регистра расчета? А когда все без исключения графики ведутся в разрезе сотрудников. И как только появляется график "пятидневка" общий для всех сотрудников, такая связь Измерение-Измерение становится неверной.
15. mrdug 763 20.10.12 21:25 Сейчас в теме
(14) nalivai-chai,
Вы связь с графиком в регистре расчета задаете через измерение регистра расчета - это -1 балл. Сходите на курсы к Белоусову - и поймёте правильно это или нет :)

Ваше пояснение (http://infostart.ru/public/126813/) к данному пункту "часто встречающихся ошибок" увы неправильное: "Тут довольно просто, какие измерения в регистре сведений Графики работы – такая и будет связь". Не все так просто. И такая связь не следуют автоматически из совпадения измерений. Во всем должен быть прикладной смысл. Если вас послушать - то надо связывать измерение Сотрудник с измерением Подразделение :)
16. nalivai-chai 693 20.10.12 21:41 Сейчас в теме
(15) mrdug, Вы наверно также Белоуслова слушали, как и читали комментарий, если из него для Вас следует, что "надо связывать измерение Сотрудник с измерением Подразделение :)"
17. mrdug 763 20.10.12 22:51 Сейчас в теме
(16) nalivai-chai, поясню что я имел ввиду:

какие измерения в регистре сведений Графики работы – такая и будет связь".

Если в РС измерение Сотрудник, значит, если будет делаться связь (и если эта связь нужна!) - то она будет с измерением Сотрудник в РР. Если в РС измерение Подразделение - то очевидно что связь будет с Подразделением в РР.

Читайте пожалуйста внимательно.
18. nalivai-chai 693 20.10.12 23:11 Сейчас в теме
(17) mrdug, Хорошо.

Если в РС есть измерение "Сотрудник" и РР измерение "Сотрудник", и действительно должна быть связь РР с графиком по "Сотруднику", но вместе с тем в РС нужно хранить график по "пятидневке", "шестидневке" и по сколько угодно многим другим графикам. Чаще всего именно так стоит вопрос.

Судя по тому как Вы пишете, нужно непременно устанавливать связь Измерение-Измерение по сотруднику.

Но если мы хотим чтобы какой-нибудь сотрудник или группа сотрудников заработали по "Пятидневке".
Это что же, нужно для каждого сотрудника заводить записи с одинаковым графиком?
Ведь в РР измерение "Сотрудник" всегда заполнена и всегда будет связь с РС по этому измерению.

Как же поступать?
19. mrdug 763 20.10.12 23:39 Сейчас в теме
(18) nalivai-chai, ключевой момент здесь - это объяснение связи измерений. Вы же рассматриваете сейчас правильность применения связи. Это несколько другое...

И моё решение, и ваше - имеют право на существование. И если вы правильно поняли суть подготовки к экзамену - вы знаете, что разницы между "более правильное или менее правильное" нет никакой.
20. nalivai-chai 693 21.10.12 00:19 Сейчас в теме
(19) mrdug, на экзамене "более правильное или менее правильное" пофиг. Цель - сдать экзамен любыми средствами.
Когда пишешь статью о том, как сдавать эказамен - это другое, нужно показывать как "ниболее правильно".
Как менее правильно сделать каждый сам догадается)... интуитивно.

При подготовке к спецу по платформе сложно найти качественный материал, где обсуждались бы нюансы, камешки подводые, остаются только учебные центры 1С или Насипов и Гилев. Но за все хорошее нужно платить деньги.

Статья-то мне Ваша понравилась, но хотелось бы обратить внимание на некоторые моменты...)
21. mrdug 763 21.10.12 10:55 Сейчас в теме
При подготовке к спецу по платформе сложно найти качественный материал, где обсуждались бы нюансы, камешки подводые,

Нюансов очень много и показать их все в одной статье - не реально.

но хотелось бы обратить внимание на некоторые моменты...)

Спасибо за обсуждение.
22. Darklight 33 28.10.13 14:03 Сейчас в теме
Небольшое примечание. Кажется, приведённая задача очень похода на задачу 3.36 из сборника. Но только чуть сложнее- добавлено требование возможности создания пользовательских видов расчетов (и эта тема не очень хорошо прокомментирована в решении); и чуть проще (по условию но не по решению) - отсутствует потребность создавать первый отчет о начислениях сотрудников (требуется только второй - по компенсациям за пробег). И ещё, в отличии от задачи сборника здесь дано правильное требование в случае получения сотрудником пособия начисление компенсации надбавки не производится. Соответственно, рядом в сборнике есть несколько похожих задач - их можно будет порешать самостоятельно для закрепления материала.
23. Darklight 33 28.10.13 15:48 Сейчас в теме
А ещё мне так и не стало до конца ясно предложение nalivai-chai о размещении ссылки на график в реквизитах РР. Если я правильно понял - структура графика в любом случае остаётся почти такой же (т.е. три ресурса значений графика (часы, дни, и дни_пятидневка), измерение Дата, а меняется лишь измерение Сотрудник на График (из соотв. нового справочника графики). А в РР связь устанавливается не через их измерение Сотрудник, а через реквизит - График. Который необходимо будет заполнять из ТЧ документа Начисление зарплаты, где его нужно будет заполнят вручную, а в идеале - автоматически при выборе сотрудника (из РС Сведения о сотрудниках, где его нужно будет разместить в новом ресурсе) - ну или как вариант, в ТЧ его можно не размещать, а сразу подхватывать из РС при заполнении первичных движений РР.
И это всё только ради упрощения управления графиками для сотрудников. Но в задаче про это ни слово не сказано - это только осложнение решения задачи. На экзамене и так времени очень мало - так что я считаю, что решение от mrdug наиболее правильное для использования на экзамене (всилу его простоты реализации и без упрощения самой задачи). А решение с графиком в реквизите - конечно более правильное для практического применения. Но практика - это совсем другое, там, скорее всего, нет смысла совмещать в одном графике два графика (произвольный и фиксированный-пятидневку) в рамках одного типа графика. Но платформа не позволяет с одной строкой расчета связать данные нескольких графиков. Поэтому на практике либо получать данные второго графика вручную из РС (пятидневку по рабочим дням - т.к. это не требует данных по периоду действия и легко и надёжно получается запросом); либо (что конечно извращение, но если нужен был период действия сразу в нескольких графиках - то я бы поступил именно так на практике) - создать отдельный вид расчета - который бы считал данные нужного графика (из своего реквизита) и помещал их в свой результата (например в типовой ЗУП подобным образом решается проблема расчета отпусков - для определения дней оставшихся отпусков) - но на экзамене, всё же лучше обойтись доп ресурсом РС, т.к. число вариантов фиксировано - а это правило экзамена - если какой-то учет фиксирован в своих вариантах в условиях задачи - значит его нужно фиксировано размещать в разных ресурсах, без какой-либо универсализации.
Но если я что-то не так понял - прошу поправить меня.
24. Darklight 33 28.10.13 16:21 Сейчас в теме
И ещё один вопрос. В разборе решения задачи ничего не сказано про аналитику регистров расчета (измерения), и плохо сказано про их реквизиты.
Судя по результирующему отчету - нужен раздельный учет начислений (компенсации) по сотруднику и автомобилю.
Значит в РР дополнительные начисления нужно два измерения: Сотрудник и Автомобиль (но, учитывая, что по данные начислений в разрезе автомобилей нигде в расчетах не нужны, то сними можно поступить так же как и с подразделениями ниже, т.е. разместить не в измерениях, а в реквизитах - значит по основным начислениям, как и по дополнительным - будет только одно измерение - "Сотрудник").
А в РР основных начислениях - только Сотрудник.
Но если нужен отчет по начисления (по форме из задачи 3.36 сборника), то там разделение начислений ВР идёт как по сотрудникам, так и по подразделениям (причём про связь сотрудников с подразделениями ни слова не сказано ни здесь, ни в задаче 3.36 сборника). А раз ни слова не сказано - то проще добавить соответствующий реквизит "Подразделение" в РР Основные начисления и в РР Дополнительные начисления (т.к. отчет по начислениям строится по всем видам расчетов) - куда и поместить подразделение сотрудника из ТЧ (это упростит итоговый отчет) - проверять повтор привязки сотрудника к разным подразделениям не нужно - т.к. это не требуется по условию задачи и на результате негативно не скажется) - в отчете его можно будет выдернуть из регистра как и измерение сотрудник (в данном случае нам не нужны особенности учета подразделений в измерениях, т.к. это не влияет на рачеты).
25. Darklight 33 28.10.13 16:35 Сейчас в теме
Ещё я хочу вернуться к дополнительным начислениям. И учету пробега по автомобилям. Не могу понять, зачем для этого заводить отдельный РН и документ и решать задачу накопления. В условии задачи про это ведь ни слова не сказано. Там просто указано, что компенсация начисляется за каждые 100 км пробега, но ни слова нет о необходимости вести их учет. Да, конечно, на практике это нужно. Но на экзамене, с учетом ограниченного времени, разве не достаточно ли просто ввести учет автомобилей в ТЧ "дополнительные начисления" и отдельными строками внести в реквизите Размер = пробег по строке сторонник+автомобиль. Или к необходимости формировать задачу накопления сподвигнет сочетание двух фраз В зависимости от величины пробега автомобиля в расчетном периоде + Все сотрудники работают на автомобилях предприятия, поэтому возможен обмен автомобилями между водителями а значит нужно как-то автоматически собирать реальный пробег и учитывать его в РН, т.к. требует вычисления? Но тогда, если бы сотрудники не могли меняться своими автомобилями - можно ли обойтись без учета в РН?
Вообще, конечно, данную задачу на практике лучше решать по методу расчета через "табель", но тут уже ничего не поделаешь - в условии задачи стоит метод отклонений :( что усложняет задачу.
P.S. Под задачей накопления РН я естественно понимал задачу учета оборотов (остатки здесь не требуются): в описании решения про тип регистра, кстати, ничего вообще не сказано!
26. revril 30.10.13 14:23 Сейчас в теме
спасибо за помощь!! Очень помогло при сдаче экзамена!! Особенно при решении расчетной задачи!
27. XelOla 18 04.08.14 11:21 Сейчас в теме
Хочу узнать качала ли я?
28. held88 59 01.08.19 12:06 Сейчас в теме
Добрый день! Пока не смотрел ваше решение. Хотелось бы решить самому. И вот я впал в ступор по поводу пояснения с вторым ресурсом РС график из пункта 5. Ну сделаем мы второй ресурс и что дальше? Мы же в РР на закладке Основные конкретно задаем какой ресурс будет значением для графика. Ну заведем мы второй ресурс и как сказать программе, что вот для этого вида расчета бери из этого ресурса, а для этого вот из этого. У нас же обо вида в одном плане и в одном регистре, так?

И второй вопрос. А обязательно ли связывать график с регистром по сотруднику. Можено его не связывать, а график задавать в документе расчета ЗП. Можно даже завести регистр НазначенныеГрафикиСотрудникам и вести там соответствие для авто заполнения. Выбрали сотрудника, сразу подставился график.
Оставьте свое сообщение