Автор Тема: Билет 3. Спец по платформе V8  (Прочитано 140460 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

antonio_1c

  • Пользователь
  • **
  • Сообщений: 12
  • ФИО: Антон
Re: Билет 3. Спец по платформе V8
« Ответ #390 : Ноябрь 07, 2018, 01:32:14 pm »

Buriy, ComradeKite, Ещё момент по задаче - расчёте записей берётся срез последних по окладу, однако если сторнирование, тогда ставка оклада должна браться из периода сторнирования, как я понимаю... Хотя судя по комментариям этого не требуется...
« Последнее редактирование: Ноябрь 07, 2018, 01:37:17 pm от antonio_1c »

ComradeKite

  • Проверенный
  • ***
  • Сообщений: 137
Re: Билет 3. Спец по платформе V8
« Ответ #391 : Ноябрь 07, 2018, 06:05:04 pm »

Buriy, ComradeKite, Ещё момент по задаче - расчёте записей берётся срез последних по окладу, однако если сторнирование, тогда ставка оклада должна браться из периода сторнирования, как я понимаю... Хотя судя по комментариям этого не требуется...
Не требуется


eiffil

  • Пользователь
  • **
  • Сообщений: 87
Re: Билет 3. Спец по платформе V8
« Ответ #392 : Ноябрь 09, 2018, 11:34:53 am »

Buriy, ComradeKite, Ещё момент по задаче - расчёте записей берётся срез последних по окладу, однако если сторнирование, тогда ставка оклада должна браться из периода сторнирования, как я понимаю... Хотя судя по комментариям этого не требуется...
Не требуется


У меня на экзамене Белоусов сказал, что нужно брать ставку оклада сторно-записей из периода сторнирования. Я сказал, что когда формировал сами записи, в реквизит "Размер" писал оклад. А когда делаю расчет, то если у записи есть признак "Сторно", то поле размер не перезаполняю. Т.о. оклад в сторно записи соответсвует периоду, за который эта запись рассчитывается. Его это устроило. И в принципе, это правильное решение.

А если для сторно-записи брать оклад на начало текущего периода - это уже будет ошибкой.

ZemlyanRus

  • Новичок
  • *
  • Сообщений: 2
  • ФИО: Алексей Землянский
Re: Билет 3. Спец по платформе V8
« Ответ #393 : Ноябрь 10, 2018, 06:26:31 pm »
Сдавал этот билет 02 ноября (разумеется дистанционно); вчера прилетел ответ "Оценка 5", без комментария. Я немного затроил с отчётом по расчёту ЗП, - запутался в строках, колонках кросс-таблицы и вместо этого махнул руками и сделал вообще без кросс-таблицы. Оценку не снизили - экзаменатору явно понравился алгоритм списания, исключающий проблему копеек на валютном счёте:
Если СуммаПоДокументу  <= Окр(ВыборкаОбщийИтог.СуммаРасч, 2) Тогда
 ВыборкаДетальныеЗаписи = ВыборкаОбщийИтог.Выбрать();
  ОсталосьСписать = СуммаПоДокументу;
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
  Движение = Движения.Управленческий.Добавить();
  Движение.СчетДт = ПланыСчетов.Управленческий.Касса;
  Движение.СчетКт = ПланыСчетов.Управленческий.Покупатели;
  Движение.Период = Дата;
  Движение.Сумма = Мин(ВыборкаДетальныеЗаписи.СуммаРасч, ОсталосьСписать);  //как тут выше писали, в соотв. с отчётом отриц. рублёвый остаток может быть и при нулевом валютном    
 //далее если хватает, то списать всю вал сумму, иначе часть валютной пропорционально рублёвому остатку.
  Движение.СуммаВалКт = ?(ВыборкаДетальныеЗаписи.СуммаРасч >= ОсталосьСписать, ВыборкаДетальныеЗаписи.СуммаВалОстатокДт, ОсталосьСписать/ВыборкаДетальныеЗаписи.Курс);
  Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Контрагент] = Контрагент;
  Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Договор] = ВыборкаДетальныеЗаписи.Субконто2;
  ОсталосьСписать = ОсталосьСписать - Движение.СуммаВалКт ;
КонецЦикла;
Иначе
 Отказ
=Истина;
 Сообщить("Реальная сумма составляет " + Окр(ВыборкаОбщийИтог.СуммаРасч, 2));

КонецЕсли;

ОУ: По среднему делал приход на пустую партию, остальное всё банально. Нюанс: проверка на пустую партию в приходной, а не в расходной.
БУ: Субконто Контрагент, Договор, валюта через точку от Договора (реквизит). Отдельное субконто Контрагент нужно для задания УФ. При корректировке задолженности проверка, чтобы |Разница| было больше или равно 0,01 (иначе появится много записей с руб. суммой 0,01) Ещё нюанс, на который потерял много времени: в отчёте БУ и КорректировкеЗадолженности по привычке брал остаткокДт/оборотДт, а надо просто СуммаОстаток и СуммаВалОстаток.
ОУ и БУ: красивости не наводил, Сумму с Количеством не группировал, - просто не успел.
СПР: всё банально, вечерние часы отдельным видом расчёта, базовые Оклад и Командировка  но про сторно ("данные могут вводиться задним числом" ) условие кажись убрали (или я его не реализовывал) UPD: условие про сторно - ЕСТЬ, в соответствии с темой по поправки к Актуальным билетам.
Готовился с нуля, по темам первых 6 билетов с этого форума, (с поправками к Актуальным билетам: forum.chistov.pro/index.php?topic=3953.msg53929#msg53929 ), семинар самого Чистова по расчётным задачам (в 2009 году, 5 видео-занятий, они есть в интернете - это самое толковое объяснение расчётных задач),статьи с Инфостарта, статья Гилёва про управляемые блокировки.
« Последнее редактирование: Декабрь 01, 2018, 11:53:38 am от ZemlyanRus »

antonio_1c

  • Пользователь
  • **
  • Сообщений: 12
  • ФИО: Антон
Re: Билет 3. Спец по платформе V8
« Ответ #394 : Ноябрь 14, 2018, 08:45:31 pm »
Попался этот билет на экзамене.
Условие, что командировка может вводиться задним числом - есть!!!
Когда готовился, понадеялся, что уберут, ан нет.
В итоге отделалася часом трясущихся рук. Всё решил, но в механизме получения дополнения, похоже допустил ошибку - не записал набор перед получением дополнения.
Скоро узнаю, насколько это плохо :)

ZemlyanRus

  • Новичок
  • *
  • Сообщений: 2
  • ФИО: Алексей Землянский
Re: Билет 3. Спец по платформе V8
« Ответ #395 : Ноябрь 15, 2018, 12:30:57 pm »
Условие сторнирования - ЕСТЬ!
... Всё решил, но в механизме получения дополнения, похоже допустил ошибку - не записал набор перед получением дополнения.
Скоро узнаю, насколько это плохо :)
Сожалею, что указал на неправильный путь..
Хоть моя репутация уже подмочена, смею Вас уверить: записывать набор перед получением дополнения не нужно. Рабочий вариант сторнирования - в базе с решением (предыдущий мой пост). Так все делают.

eiffil

  • Пользователь
  • **
  • Сообщений: 87
Re: Билет 3. Спец по платформе V8
« Ответ #396 : Ноябрь 18, 2018, 11:59:40 pm »
но в механизме получения дополнения, похоже допустил ошибку - не записал набор перед получением дополнения.
Скоро узнаю, насколько это плохо :)

При получении дополнения записывать набор записей перед этим не нужно (иначе это просто лишняя нагрузка на базу данных). Так что должно быть верно.

antonio_1c

  • Пользователь
  • **
  • Сообщений: 12
  • ФИО: Антон
Re: Билет 3. Спец по платформе V8
« Ответ #397 : Декабрь 08, 2018, 11:04:17 am »
Экзамен сдал.
Комментарий: Хорошо.

Качественно скомпоновал все решения и опубликовал на Инфостарте.
https://expert.chistov.pro/public/956340/
Если кому-то понадобится, можно скачать БеЗплатно базы. (читайте текст, в конце ссылка)
Буду благодарен за "+".
Ещё доработал и опубликовал шпаргалки- на них ушло много времени. Думаю, будут очень полезны при подготовке.
Пишите комментарии, если возникнут вопросы :)

NICzzzZ

  • Пользователь
  • **
  • Сообщений: 22
Re: Билет 3. Спец по платформе V8
« Ответ #398 : Январь 02, 2019, 09:42:19 pm »
Доброго! Мой вариант решения билета. Буду благодарен за обратную связь.

antonio_1c

  • Пользователь
  • **
  • Сообщений: 12
  • ФИО: Антон
Re: Билет 3. Спец по платформе V8
« Ответ #399 : Январь 07, 2019, 12:02:59 pm »
Доброго! Мой вариант решения билета. Буду благодарен за обратную связь.
Посмотрел только часть, которая меня интересовала :)

На мой взгляд, вечерние часы рассчитываются неверно.
В условии ведь указано, как надо считать часовую ставку оклада, а вечерние часы нужно считать от часовой ставки, это тоже указано в условии.
Плюс указано, что вечерние часы надо считать и для командировки. А это вообще не реализовано.

NICzzzZ

  • Пользователь
  • **
  • Сообщений: 22
Re: Билет 3. Спец по платформе V8
« Ответ #400 : Январь 07, 2019, 02:33:29 pm »
Доброго! Мой вариант решения билета. Буду благодарен за обратную связь.
Посмотрел только часть, которая меня интересовала :)

На мой взгляд, вечерние часы рассчитываются неверно.
В условии ведь указано, как надо считать часовую ставку оклада, а вечерние часы нужно считать от часовой ставки, это тоже указано в условии.
Плюс указано, что вечерние часы надо считать и для командировки. А это вообще не реализовано.
Спасибо за комментарий.
По поводу корректности расчета вечерних часов: "Часовая ставка рассчитывается как начальное значение оклада, деленное на количество рабочих часов в том же периоде" - думаю здесь банальный копи/паст из расчета оклада, только с заменой фактических часов из ресурса "Значение" на факт из ресурса "ВечерниеЧасы" регистра "ГрафикиРаботы".
Насчет замечания вечерних часов и командировки - для вечерних часов не настроено вытеснение командировкой, поэтому они будут считаться независимо для указанного периода действия.
Но тут вопрос достаточно спорный. Фразу: "Вечерние часы (командировка) рассчитываются также как и для оклада" - можно трактовать двояко. Либо алгоритм в точности такой же как и расчет вечерних часов от оклада, либо вместо часовой ставки оклада, берем часовую ставку от командировки. Можно было и по второму варианту реализовать, но я поленился  :D . Правильнее всего будет уточнить у экзаменатора или объяснить в пояснительной записке свою точку зрения.

Bebi

  • Проверенный
  • ***
  • Сообщений: 165
Re: Билет 3. Спец по платформе V8
« Ответ #401 : Февраль 01, 2019, 09:41:05 am »
Как сделать это: Считается, что документы задним числом не вводятся, но старые документы могут неоперативно перепроводиться.
немного не понимаю, скажите пожалуйста

Bebi

  • Проверенный
  • ***
  • Сообщений: 165
Re: Билет 3. Спец по платформе V8
« Ответ #402 : Февраль 01, 2019, 11:12:12 am »
Как сделать это: Считается, что документы задним числом не вводятся, но старые документы могут неоперативно перепроводиться.
немного не понимаю, скажите пожалуйста
в условие запроса к регистрам остатков добавить "МоментВремени = ?(РежимПроведения=РежимПроведенияДокумента.Оперативный,
Неопределено, МоментВремени())";
или не надо ничего делать?
кто то на экзамене это не делал, кто то делал. как быть?

Михаил Проходцев

  • Проверенный
  • ***
  • Сообщений: 219
Re: Билет 3. Спец по платформе V8
« Ответ #403 : Февраль 01, 2019, 08:41:08 pm »
Как сделать это: Считается, что документы задним числом не вводятся, но старые документы могут неоперативно перепроводиться.
немного не понимаю, скажите пожалуйста
в условие запроса к регистрам остатков добавить "МоментВремени = ?(РежимПроведения=РежимПроведенияДокумента.Оперативный,
Неопределено, МоментВремени())";
или не надо ничего делать?
кто то на экзамене это не делал, кто то делал. как быть?
Так делать не надо.
Получайте остатки на МоментВремени()
Старые документы проводятся неоперативно, Вы и получаете остаток на МоментВремени() документа.
Тем более это одно из требований экзамена.
Реализовывать как-то нарушение последовательности в рамках экзамена не нужно.
« Последнее редактирование: Февраль 01, 2019, 08:45:56 pm от Михаил Проходцев »

Bebi

  • Проверенный
  • ***
  • Сообщений: 165
Re: Билет 3. Спец по платформе V8
« Ответ #404 : Февраль 03, 2019, 02:22:17 pm »
Как сделать это: Считается, что документы задним числом не вводятся, но старые документы могут неоперативно перепроводиться.
немного не понимаю, скажите пожалуйста
в условие запроса к регистрам остатков добавить "МоментВремени = ?(РежимПроведения=РежимПроведенияДокумента.Оперативный,
Неопределено, МоментВремени())";
или не надо ничего делать?
кто то на экзамене это не делал, кто то делал. как быть?
Так делать не надо.
Получайте остатки на МоментВремени()
Старые документы проводятся неоперативно, Вы и получаете остаток на МоментВремени() документа.
Тем более это одно из требований экзамена.
Реализовывать как-то нарушение последовательности в рамках экзамена не нужно.
Спасибо!