Форум Чистова. Подготовка к экзаменам 1С

Аттестация "1С:Специалист" => Аттестация "1С:Специалист по платформе 1С:Предприятие 8.3 и 8.2" => Тема начата: Jones от Сентябрь 22, 2015, 02:45:50 pm

Название: Билет 12. Спец по платформе V8
Отправлено: Jones от Сентябрь 22, 2015, 02:45:50 pm
Сделал Билет 12. Есть пара вопросов.

ОУ

Т.к. новая методика применима лишь в небольшом проценте задач, то ее алгоритм до автоматизма я так и не довел. Каждый раз приходится его вспомирать. Поэтому, коллеги, прошу проверить, ничего ли я не забыл:
1) новая методика контроля остатков (как более эффективная) применена потому, что для формирования движений не нужно ничего получать из БД, все уже есть в ТЧ документа. Алгоритм следующий:
2) До записи движений включаю БлокироватьДляИзменения
2) Формирую движения по списанию
3) Записываю движения
5) Запросом получаю остатки на ГраницуВключая этот документ
6) Если есть отрицательные остатки, то Отказ

В РН применена старая методика, т.к. надо списывать остатки стоимости.

Характеристики сделал так:
1)   Создал регсведЗначенияХарактеристик: измерение Объект (ЗаказПокупателя), измернениеВидХарактеристики (ПВХ), ресурс ЗначениеХарактеристики (Характеристика)
2)   В предприятии создал Характеристики, Регион сделал просто текстовым, заполнил регистр сведений
3)   В запросе отчета настроил, что характеристики выводить для объктов типа ЗаказПоставщику, вид харак-к брать из ПВХ, значения из регсвед.
4)   В элементе пользовательских настроек включил вывод Группировок на форму отчета, в режиме предприятия добавил группировку по характеристике Регион.

В регистре ЗаказыПокупателей у меня только Количество, а Сумма появляется только в регистре Резервы.
Кто что думает? Здесь все логично?


БУ

В блокировке хотел разделить номенклатуру на Детали и Изделия (получить две ТЗ и блокировать каждый счет по их содержимому), но потому подумал, что на экзамене не до таких извращений. Короче, просто блокирую оба счета по Номенклатуре из ТЧ. Пойдет?


ПР

В сборнике есть похожая задача – это 3.35. В задании есть несколько моментов, которые привели к возникновению вопросов:

Коллеги, я так понимаю, что в РР не нужно изменение Автомобили (Подразделения) т.к. совместительство невозможно, т.е. обмен автомобилями невозможен. Верно мыслю?
В общем сделал вообще без автомобилей, в документе только сотрудники, в РР тоже.

1000 часов проверяю как завещал уважаемый sv_mikh (http://forum.chistov.pro/index.php?topic=993.msg24021#msg24021)

Прорешал эту задачу три раза и каждый раз при начале отладки механизмов Расчетов возникала проблема с ПВР Удержания.
При попытке обращения к ПВР предприятие падало с ошибкой
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
по причине:
Ошибка SDBL:
Тип поля #updatedRows.BaseCKBaseCK несовместим с типом поля BaseCKBaseCK


Платформа 8.3.5.1248, каркасная конфигурация.
Методом тыка нашел решение, может кому пригодится )):
для удержания Штраф отключить зависимость от Невыхода, применить, а затем вернуть зависимость от Невыхода.

Название: Re: Билет 12. Спец по платформе V8
Отправлено: Jones от Сентябрь 22, 2015, 05:38:54 pm
В общем сделал вообще без автомобилей, в документе только сотрудники, в РР тоже.

В ПР задаче 13 билета тоже нет совместительства. Думаю надо все таки Бригаду в документе сделать, для приличия. Т.е. здесь надо было в документе оставить колонку Автомобиль.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Сентябрь 26, 2015, 03:08:22 pm
Прорешал эту задачу три раза и каждый раз при начале отладки механизмов Расчетов возникала проблема с ПВР Удержания.
При попытке обращения к ПВР предприятие падало с ошибкой
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
по причине:
Ошибка SDBL:
Тип поля #updatedRows.BaseCKBaseCK несовместим с типом поля BaseCKBaseCK


Платформа 8.3.5.1248, каркасная конфигурация.
Методом тыка нашел решение, может кому пригодится )):
для удержания Штраф отключить зависимость от Невыхода, применить, а затем вернуть зависимость от Невыхода.
Еще выход, и более удобный в рамках экзамена - воспользоваться советом из п.8 вот отсюда:
http://forum.chistov.pro/index.php?topic=2005.msg22414#msg22414  :)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Сентябрь 26, 2015, 03:13:13 pm
Коллеги, я так понимаю, что в РР не нужно изменение Автомобили (Подразделения) т.к. совместительство невозможно, т.е. обмен автомобилями невозможен. Верно мыслю?
Скажу больше - даже если обмен автомобилями возможен, всё равно это не аналог совместительства, и измерение Автомобиль не нужно (только реквизит) (Это на случай, если не читал мой отчет об экзамене  :) ).
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Jones от Октябрь 23, 2015, 12:03:31 pm
Задача по ПР интересна двумя моментами:
1)   Удержание Штраф 5000 за каждый день Невыхода
2)   Компенсацию начислять только если в этом месяце НаездЧасов водителя перевалил через 1000
Штраф считаю от ресурса ДниНевыходаБаза (базовый ВР – Невыход)
НаездЧасов накапливаю в оборотном регистре, получаю с НачалаВремен по НачМес и по КонМес, сравниваю с помощью Цел(ЧасыНач/1000) и если целые тысячи отличаются, значит в этом месяце водитель перевалил через 1000.

Невосстановимую ошибку (см.выше) на этот раз победил минуты за 2-3.
Отключил зависимость Штрафа от Невыхода, применил, вернул, применил, но все это не помогло.
Тогда удалил Штраф, применил, создал новый, применил, включил зависимость и все заработало.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Октябрь 23, 2015, 01:29:38 pm
НаездЧасов накапливаю в оборотном регистре, получаю с НачалаВремен по НачМес и по КонМес, сравниваю с помощью Цел(ЧасыНач/1000) и если целые тысячи отличаются, значит в этом месяце водитель перевалил через 1000.
Альтернатива - регистр остаточный. Если остаток на конец месяца > 1000, начисляем компенсацию и списываем 1000.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Jones от Октябрь 23, 2015, 01:50:21 pm
В задаче по ОУ сложность заключается в использовании механизма Характеристик для ЗаказовПокупателей.

Спр ЗначенияСвойств делаем подчиненным ПВХ СвойстваОбъектов.
В тип значения ПВХ включаем спр ЗначенияСвойств.
Создаем рег свед ЗначенияХарактеристик (изм Объект – док ЗаказПокупателя, изм ВидХарактеристики – ПВХ, рес ЗначениеХарактеристики – Характеристика)
Для ресурса ЗначениеХарактеристики в связях параметров выбора включаем что Владельцем является ВидХарактеристики (чтобы в списке значений показывались только те значения, владельцем которых является данный ВидХарактеристики).
В Предприятии созадем Заказы, Поступления, Реализации, заполняем рег свед Значения свойств (указываем для Заказов регионы).
В отчете настраиваем вывод характеристик для объектов типа Документ.ЗаказПокупателя. Формируем Отчет.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: HRom от Октябрь 27, 2015, 07:02:46 am
Поэтому, коллеги, прошу проверить, ничего ли я не забыл:
1) новая методика контроля остатков (как более эффективная) применена потому, что для формирования движений не нужно ничего получать из БД, все уже есть в ТЧ документа. Алгоритм следующий:
2) До записи движений включаю БлокироватьДляИзменения
3) Формирую движения по списанию
4) Записываю движения
...

В пункте где "БлокироватьДляИзменения" надо еще очищать движения (но не записывать для новой методики).
Привожу цитату из статью Чистова:


К примеру, в зависимости от этого свойства, движения документа будут прочитаны (если галка стоит) при открытии формы или нет. А если даже галка не установлена, и в форме отображаются движения, то движения будут прочитаны при открытии формы.
В обычных формах движения будут однозначно прочитаны при открытии формы.
А если движения прочитаны, то наборы записей в свойстве документа "Движения" не пустые, и добавление при проведении новых движений, как правило приводит к дублям движений.
Так вот, чтобы не зависеть от обстоятельств, мы на всякий случай удаляем то, что возможно может находиться в коллекции движений по регистру ОстаткиТоваров. Обращаю внимание, что запись данных в базу тут не производится, просто в памяти очищается набор записей.
Кстати, если свойство конфигурации "Основной режим запуска" будет установлено в значение "Обычное приложение", то такую строку "Движения.ИмяРегистра.Очистить()" будет писать и сам конструктор формирования движений.


Проверил. Если в форме напротив всей ветки Движения тип "Коллекция движений", поставить галку "Использовать всегда", то движения в форме действительно не очищены.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: HRom от Октябрь 27, 2015, 08:37:18 am

БУ

В блокировке хотел разделить номенклатуру на Детали и Изделия (получить две ТЗ и блокировать каждый счет по их содержимому), но потому подумал, что на экзамене не до таких извращений. Короче, просто блокирую оба счета по Номенклатуре из ТЧ. Пойдет?


По идее мы же блокируем не весь счет товары, а счет товары по конкретному списку номенклатуры на субконто "Номенклатура".
Если в нашей табличной части нет товаров (а одни материалы), то не найдя по субконто что блокировать система счет Товары не будет блокировать вообще.
Я правильно понимаю?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: АлексейФедоров от Ноябрь 02, 2015, 11:35:54 am
Всем привет!
Только начинаю готовиться, ребят не подскажите как понять когда использовать старую методику, а когда новую, или ссылочку :)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Ноябрь 02, 2015, 01:51:52 pm
Всем привет!
Только начинаю готовиться, ребят не подскажите как понять когда использовать старую методику, а когда новую, или ссылочку :)
Когда перед проведением НЕ НАДО предварительно получать данные из того же регистра, в который записываем, чтобы проконтролировать остатки, обязательно используется новая.
Когда перед проведением НЕОБХОДИМО получить данные именно из того же регистра, в который записываем, чтобы проконтролировать остатки, обязательно старая.
Но чаще ситуация бывает неоднозначная - можно создать дополнительный РН для учета остатков (обычно с меньшим количеством измерений, чем в РН для учета себестоимости), в котором эти самые остатки и контролировать без предварительного получения данных из этого же регистра. И вот в этом случае кто-то создает дополнительный РН, и делает "по-новому", кто-то не создает, и делает "по-старому", обычно на экз вроде прокатывают оба варианта (судя по отзывам).
Название: Re: Билет 12. Спец по платформе V8
Отправлено: АлексейФедоров от Ноябрь 05, 2015, 01:44:42 pm
alex1248, спасибо !=)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Jones от Ноябрь 06, 2015, 10:10:40 am
В пункте где "БлокироватьДляИзменения" надо еще очищать движения (но не записывать для новой методики).
HRom, хочешь сказать, Очищать() надо всегда, даже при новой методике? Надо запомнить и применить.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: AlexGroovy от Ноябрь 11, 2015, 04:18:41 pm
Вот этот кусок мне абсолютно не понятен,то есть надо делать через регистр сведений или брать из документа" Процент компенсации общий для всех сотрудников и может изменяться не чаще, чем один раз в месяц. В информационной базе необходимо хранить историю изменения данного процента. В момент начисления компенсации значение процента определяется определяется пользователем самостоятельно и заносится в документ “Начисление зарплаты”. Компенсация начисляется только в случае отсутствия невыходов, однако контролировать программным образом данное обстоятельство не требуется." ?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: AlexGroovy от Ноябрь 11, 2015, 05:52:38 pm
И Jones у меня такой вопрос , я заметил ты всегда в период регстрации ставишь дату документа, я думал так можно делать только если есть такое условие" В одном документе могут быть данные только за текущий расчетный период." Если условие за разные расчетные периоды ,тогда период регистрации надо добавлять в ТЧ,или я ошибаюсь?)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: margaritka47729 от Ноябрь 11, 2015, 11:17:49 pm
Цитировать
Необходимо создать отчет по анализу недоотгруженных заказов покупателей на выбранную дату в разрезе выбранной характеристики.

JONES, Может я ошибаюсь, но по-моему не совсем правильно строить отчет отбирая только по региону?

Название: Re: Билет 12. Спец по платформе V8
Отправлено: margaritka47729 от Ноябрь 13, 2015, 01:23:47 am
НаездЧасов накапливаю в оборотном регистре, получаю с НачалаВремен по НачМес и по КонМес, сравниваю с помощью Цел(ЧасыНач/1000) и если целые тысячи отличаются, значит в этом месяце водитель перевалил через 1000.
Альтернатива - регистр остаточный. Если остаток на конец месяца > 1000, начисляем компенсацию и списываем 1000.


Тоже считаю Ваше решение правильным. Однако все комментарии убеждали на оборотный регистр... В общем, нашла такой топик - http://forum-1c.ru/index.php?topic=14856.10
Оставлю ссылку здесь, в защиту Вашего решения :)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: venvlad от Ноябрь 18, 2015, 10:18:53 am
Штраф за невыход, формирует сам невыход, 1000 беру на конец месяца, если часы превышают начисляю компенсацию. Вот только не понятно, после начисления компенсации, удалять 1000 из РН или в задаче имеется ввиду, что если сотрудник наездил 1000 значит если есть часы в этом месяце, то он само сабой получит свою компенсацию, типа за выслугу.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Quantum81 от Ноябрь 23, 2015, 10:40:51 pm
Штраф за невыход, формирует сам невыход, 1000 беру на конец месяца, если часы превышают начисляю компенсацию. Вот только не понятно, после начисления компенсации, удалять 1000 из РН или в задаче имеется ввиду, что если сотрудник наездил 1000 значит если есть часы в этом месяце, то он само сабой получит свою компенсацию, типа за выслугу.
не нашел у тебя списание 1000 часов, после выплаты компенсации. Да и похоже на упрощение задачи, часы берешь не из факта а вводишь отдельно. ПД в компенсации, имхо, лишний (ни план  ни факт ты не считаешь).

Коллеги, не находите что отчет в СПР 12 билета - должен решаться на регистре оборотов? Не будет ли снижение балов за использование кучи джойнов и агрегатных функции по таблицам движений РР?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Zeskord от Ноябрь 23, 2015, 11:37:25 pm
Штраф за невыход, формирует сам невыход, 1000 беру на конец месяца, если часы превышают начисляю компенсацию. Вот только не понятно, после начисления компенсации, удалять 1000 из РН или в задаче имеется ввиду, что если сотрудник наездил 1000 значит если есть часы в этом месяце, то он само сабой получит свою компенсацию, типа за выслугу.
не нашел у тебя списание 1000 часов, после выплаты компенсации. Да и похоже на упрощение задачи, часы берешь не из факта а вводишь отдельно. ПД в компенсации, имхо, лишний (ни план  ни факт ты не считаешь).

Коллеги, не находите что отчет в СПР 12 билета - должен решаться на регистре оборотов? Не будет ли снижение балов за использование кучи джойнов и агрегатных функции по таблицам движений РР?
Я не нахожу. Регистр оборотов я использую, чтобы копить количество наезженных и компенсированных часов. Но, по идее, можно этим и не пользоваться, а обороты брать из регистров расчета. А в отчете ни одного джойна, зато два раза объединить все.

У venvlad решение, как мне показалось, не закончено, поэтому 1000 не списывается. Еще зачем-то какие-то путевые листы. Можно же вводить наезженные часы прямо в строку основных начислений в документе НачислениеЗарплаты.

P.S. Коллеги, не стесняйтесь, выкладывайте свои решения :)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Quantum81 от Ноябрь 27, 2015, 04:43:41 pm
Какой-то сложный билет получился
СПР Четыре вида расчета на трех ПВР. Наезд часов беру из фактически отработанных и накапливаю в РН.
Все расчеты начисляю по желанию пользователя.
БУ Посмотрел другие решения и не понял, почему нет доков комплектация и перемещение.
Сделал с ними.
ОУ простой, да если вклеивать в БУ то головоломный и 100 % завальный на экзамене. Во всех решениях проведение разделяют.  Я решил разделить остатки. Т.к . проблема что не изчего комплектовать компы, раз все детали под заказ. Поэтому в приходной накладной указываю, что комплектующие для сборки и по ОУ этот док не провожу.
Отчет настроил из под пользователя и сохранил вариант по регионам.

На экзамене придется разделять проведение, иного варианта не нашел. Т.к. даже в моем решении остатки для сборки пользователь контролирует сам.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Zeskord от Ноябрь 28, 2015, 08:10:54 pm
Какой-то сложный билет получился
СПР Четыре вида расчета на трех ПВР. Наезд часов беру из фактически отработанных и накапливаю в РН.
Все расчеты начисляю по желанию пользователя.
БУ Посмотрел другие решения и не понял, почему нет доков комплектация и перемещение.
Сделал с ними.
ОУ простой, да если вклеивать в БУ то головоломный и 100 % завальный на экзамене. Во всех решениях проведение разделяют.  Я решил разделить остатки. Т.к . проблема что не изчего комплектовать компы, раз все детали под заказ. Поэтому в приходной накладной указываю, что комплектующие для сборки и по ОУ этот док не провожу.
Отчет настроил из под пользователя и сохранил вариант по регионам.

На экзамене придется разделять проведение, иного варианта не нашел. Т.к. даже в моем решении остатки для сборки пользователь контролирует сам.
А точно ли в СПР нужно использовать регистр накопления? Ведь он в итоге не "схлопывается", таблица итогов будет расти. Конечно, можно придумать документ Увольнение, где выводить регистр в ноль, но это может быть расценено как усложнение задачи. Мой вариант - оборотный регистр накопления, который в одном ресурсе копит отработанные часы, а в другом часы, с которых начислена компенсация. При расчете получаю таблицу оборотов без отбора по периоду, но с отбором по сотрудникам из строк документа. Тоже не идеально, но, по крайней мере, не попадет под ошибку из всеми любимого файла
Цитировать
Построенная в решении учетная схема не обеспечивает правильного занесения данных в регистры. Например, необходимо списать 1000, а списывается 500   2,0
А есть еще такая ошибка
Цитировать
В задачах получения итоговой информации по остаткам использование информации по оборотам или наоборот   2,0
На мой взгляд, отработанные часы это оборотные данные, и компенсированные часы - тоже. Кто что думает по этому поводу?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: margaritka47729 от Декабрь 05, 2015, 04:57:43 pm
Пункт 8 отсюда http://forum.chistov.pro/index.php?topic=2005.msg22414#msg22414
8. СПР. Если Невыход вытесняет Оклад и при этом еще является штрафом - не нужно отдельно вводить ВР Штраф, Невыход должен вытеснять и сам производить удержание, ну а то что он находится не в ПВР Удержания, а в ПВР Основные начисления - это нормально.

Кто как считает? нужно ли под штраф ПВР Удержания задействовать?
Я делала, но после прочтения того поста - вызывает сомнения :-X
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Quantum81 от Декабрь 05, 2015, 05:20:06 pm
В условии написано "Если не вышел по неуважительной причине".
Т.е. сотрудник может прогулять и по уважительной причине, но оклад то мы платить не будем, и штраф начислять не будем. А вот если причина неуважительная, то нужно начислять штраф. Имхо, штраф должен пользователем инициироваться отдельно.

Другой вопрос, что  эти домыслы возможно опустить на экзамене, а то больно емко получается.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: margaritka47729 от Декабрь 05, 2015, 07:05:16 pm
В условии написано "Если не вышел по неуважительной причине".
Т.е. сотрудник может прогулять и по уважительной причине, но оклад то мы платить не будем, и штраф начислять не будем. А вот если причина неуважительная, то нужно начислять штраф. Имхо, штраф должен пользователем инициироваться отдельно.

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

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

PS
а по поводу предложенного в том сообщении, результат надо с минусом писать -5000 или как обычно 5000?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Olga1c от Декабрь 08, 2015, 10:37:57 pm
А я все со своими характеристиками..
Пожалуйста, будьте так любезны, посмотрите кто-нибудь мой отчет по ОУ, не могу вывести характеристики в пользовательском режиме. Все заполнила, в запросе все настроила, в пользовательских настройках вывожу группировку, и в режиме пользователя видно группировки, но там не добавляются характеристики заказа, будто их нет. Я таки чего-то не понимаю.... Вроде бы вот ни у кого проблем с этим нет, одна я такая блин...
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Quantum81 от Декабрь 08, 2015, 11:31:02 pm
А я все со своими характеристиками..
Пожалуйста, будьте так любезны, посмотрите кто-нибудь мой отчет по ОУ, не могу вывести характеристики в пользовательском режиме. Все заполнила, в запросе все настроила, в пользовательских настройках вывожу группировку, и в режиме пользователя видно группировки, но там не добавляются характеристики заказа, будто их нет. Я таки чего-то не понимаю.... Вроде бы вот ни у кого проблем с этим нет, одна я такая блин...
ЗаказПокупателя - Данные - Характеристики не заполнено.
Еще по мелочи РС ДопХарактеристики ресурс Значение - установи связь по типу от свойства (и можешь смело пвх составной делать)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Olga1c от Декабрь 09, 2015, 05:48:43 am
Ах, вооон оно где... данные блин! спасибо!!!!

так я же связь установила... на значение... или я не о том? где именно? Связи параметров выбора? это? или что?

Посмотрела у Джонса и еще одно решение - там тоже не заполнено. Только у тебя пожалуй и заполнено. Ну, мож еще у кого, но я не смотрела больше.
Щас у себя сделаю, отпишусь что получилось.

Так, ну я заполнила, но все равно в отчете эти поля не добавились. Сделала по твоей аналогии...  У меня такое чувство что я делаю что-то не так в СКД. А что именно - не могу понять. Смотрела твой отчет - не поняла где ты настроил и как чтобы еще один вариант был по региону. В режиме пользователя я что-то не смогла какой-то еще вариант сделать.

Блин. вопрос остается открытым...
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Quantum81 от Декабрь 09, 2015, 09:28:18 am
в отчете: характеристики к последнему запросу приделай, а не к тому что в ВТ помещаешь.

* связь по типу это мелочь. Это чтобы при выборе значения характеристики, не нужно было пользователю еще и тип значения выбирать (Если ПВХ составного типа).
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Olga1c от Декабрь 09, 2015, 09:42:14 am
ооо, алилуйя! Получилось
точно, слушай, а я ж ВТ позже сделала, сначала отчет сделала без ВТ, прицепила характеристики, потом увидела что не группируется, засунула в вт, сгруппировала, а характеристики остались на первом)))))
Спасибо)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Olga1c от Декабрь 09, 2015, 02:20:46 pm
БУ Посмотрел другие решения и не понял, почему нет доков комплектация и перемещение.
Сделал с ними.
Ага.
Я тоже так подумала сначала, а как же без перемещения и комплектации? Тоже с ними сделала. Но блин, как это оказалось долго! Коллеги, как думаете, если на экзамене эти операции (перемещение и комплектацию) оставить на откуп пользователю в документ Операция, будет ли ошибкой и упрощением задачи? Я прямо не знаю что тут делать, вроде и напрашиваются они, но в условиях про них ниче не сказано. Если делать с ними, то долго, если без них, то вдруг упрощением посчитают.....
Название: Re: Билет 12. Спец по платформе V8
Отправлено: zorky от Декабрь 14, 2015, 10:18:51 pm
Билет прорешан(Кроме БП).

Вот такая непонятная особенность у РМ к концу обучения выявилась. Кто сможет разобраться, прошу)))). Итог я знаю. Решил скинуть на форум для всеобщего обозрения.

Попробуйте провести документ "Начисления" от Февраля)).
до 12 го ещё не добрался. Сделал 10-ый ОУБУ. Но всё же интересно- что такое РМ ? ) Базу посмотрел..провёл док.от февраля...
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Роман от Декабрь 15, 2015, 05:21:30 pm
zorky. Извиняюсь. Не тот скинул) РМ = Расчетные механизмы)

Билет прорешан(Кроме БП).

Вот такая непонятная особенность у РМ к концу обучения выявилась. Кто сможет разобраться, прошу)))). Итог я знаю. Решил скинуть на форум для всеобщего обозрения.

Попробуйте провести документ "Начисления" от Февраля)).
Название: Re: Билет 12. Спец по платформе V8
Отправлено: zorky от Декабрь 15, 2015, 09:03:21 pm
zorky. Извиняюсь. Не тот скинул) РМ = Расчетные механизмы)

Билет прорешан(Кроме БП).

Вот такая непонятная особенность у РМ к концу обучения выявилась. Кто сможет разобраться, прошу)))). Итог я знаю. Решил скинуть на форум для всеобщего обозрения.

Попробуйте провести документ "Начисления" от Февраля)).

Был глюк  - не было факт Часов У Невыхода, и Факт-дней.  Они почему то NULL были.
Глюк исправил - заменил в ОН ЗначениеЧасы на ЗначениеДни у Значения Графика, запустил - норма.
Потом поменял обратно - и всё появилось как нужно.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: zorky от Декабрь 18, 2015, 10:46:57 pm
Ни Фига билетик не маленький! )))))))))) прорешал вроде!!!
БУ - без док-а "Комплектация" (а зачем "Перемещение" ??) .Это ужасно, но пусть Приходка принимает Готовые Компы или Комплектующие.(ВидНоменклатуры). Иначе на задачу уйдёт пусть даже 1,5 часа, минимум-не позволительно на экз) Да и в условиях нету... 
И весьма объёмная задача СПР...   много времени заняла, блин.  Ставка в РС - стандартно.  Один расчётный период, МесяцНачисления- в Шапку.  1000 часов - сделал накопления в РН(остатки).  При начислении Компенсации смотрю, остаток >100 (для тестирования) и базу тут же...  Если есть - начисляю. Вопрос ...тут такой же где то был..: а РН освобождать... когда и как.  По логике можно сделать примочку, если чувак пересел на другую машину(новую) а та сломалась, тогда ВСЕ ЧАСЫ на старой МАШИНЕ - можно очистить)))  Машину на свалку. Вечно на одной не поездишь))) как думаете???   А ещё:  по условию Процент надо хранить, делаю в РС. Независимый, Период=Месяц по условию. Ещё там сказано, что в документе нужно указывать Процент...Прикинул так:  Если нету в Доке - берём из РС, если есть в Доке - смотрим на месяц(период), если больше - пишем в РС(новый для всех)...вроде так по условию. Не знаю - кто на Экзамене эту задачу решил, 3 часа уходит блин запросто!)))) и Отчёт хитрый, часы из ДанныхГрафика, Был штраф-тут же можно взять по ВР. Сумму Компенсации присоединяю Джойном...  Красиво вроде!)) ну и билет.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Декабрь 18, 2015, 11:30:58 pm
БУ - без док-а "Комплектация" (а зачем "Перемещение" ??) .Это ужасно, но пусть Приходка принимает Готовые Компы или Комплектующие.(ВидНоменклатуры). Иначе на задачу уйдёт пусть даже 1,5 часа, минимум-не позволительно на экз) Да и в условиях нету...   
Что за "Перемещение"? А "Комплектацию" (или "Сборку") всё же надо. А так  выходит существенное упрощение задачи.
Чего нет в условиях?
И весьма объёмная задача СПР...   много времени заняла, блин.  Ставка в РС - стандартно.  Один расчётный период, МесяцНачисления- в Шапку.  1000 часов - сделал накопления в РН(остатки).  При начислении Компенсации смотрю, остаток >100 (для тестирования) и базу тут же...  Если есть - начисляю. Вопрос ...тут такой же где то был..: а РН освобождать... когда и как.  По логике можно сделать примочку, если чувак пересел на другую машину(новую) а та сломалась, тогда ВСЕ ЧАСЫ на старой МАШИНЕ - можно очистить)))  Машину на свалку. Вечно на одной не поездишь))) как думаете???   А ещё:  по условию Процент надо хранить, делаю в РС. Независимый, Период=Месяц по условию. Ещё там сказано, что в документе нужно указывать Процент...Прикинул так:  Если нету в Доке - берём из РС, если есть в Доке - смотрим на месяц(период), если больше - пишем в РС(новый для всех)...вроде так по условию. Не знаю - кто на Экзамене эту задачу решил, 3 часа уходит блин запросто!)))) и Отчёт хитрый, часы из ДанныхГрафика, Был штраф-тут же можно взять по ВР. Сумму Компенсации присоединяю Джойном... 
Не надо усложнять - задача станет меньше.  :)
"В одном документе могут быть данные только за текущий расчетный период" - следовательно, ни в каких дополнительных данных, типа месяца начисления, необходимости нет, можно считать, что все данные вводятся за месяц даты документа (так и вводить данные, без доп проверок).
"а РН освобождать... когда и как" - а есть варианты? Если оба допустимы, то выбрать для себя один, и при необходимости пояснить экзаменатору.
Никаких примочек на случай смены машины, естественно, не надо. Так вот, раз речь зашла про автомобиль, скажу больше, и спр Автомобиль не нужен, поскольку для решения задачи он не имеет никакого значения, Сотрудник = Автомобиль.
Процент - РС делаем, раз велят, а в док юзер вводит сам, следовательно, из РС выбирать не надо. Зачем лишние проверки в цейтноте?
Про отчет сказано "должен быть построен за текущий расчетный период", т.е. опять же за месяц. Только какой будет текущим? Думаю, достаточно указывать дату (одну) отчета, и за соответствующий месяц его формировать.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Роман от Декабрь 21, 2015, 05:42:07 pm
Ни Фига билетик не маленький! )))))))))) прорешал вроде!!!
БУ - без док-а "Комплектация" (а зачем "Перемещение" ??) .Это ужасно, но пусть Приходка принимает Готовые Компы или Комплектующие.(ВидНоменклатуры). Иначе на задачу уйдёт пусть даже 1,5 часа, минимум-не позволительно на экз) Да и в условиях нету... 
И весьма объёмная задача СПР...   много времени заняла, блин.  Ставка в РС - стандартно.  Один расчётный период, МесяцНачисления- в Шапку.  1000 часов - сделал накопления в РН(остатки).  При начислении Компенсации смотрю, остаток >100 (для тестирования) и базу тут же...  Если есть - начисляю. Вопрос ...тут такой же где то был..: а РН освобождать... когда и как.  По логике можно сделать примочку, если чувак пересел на другую машину(новую) а та сломалась, тогда ВСЕ ЧАСЫ на старой МАШИНЕ - можно очистить)))  Машину на свалку. Вечно на одной не поездишь))) как думаете???   А ещё:  по условию Процент надо хранить, делаю в РС. Независимый, Период=Месяц по условию. Ещё там сказано, что в документе нужно указывать Процент...Прикинул так:  Если нету в Доке - берём из РС, если есть в Доке - смотрим на месяц(период), если больше - пишем в РС(новый для всех)...вроде так по условию. Не знаю - кто на Экзамене эту задачу решил, 3 часа уходит блин запросто!)))) и Отчёт хитрый, часы из ДанныхГрафика, Был штраф-тут же можно взять по ВР. Сумму Компенсации присоединяю Джойном...  Красиво вроде!)) ну и билет.

Отчет ОУ без характеристик. Ты их прицепил в запросе, но а в отчете нет. Почему?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: zorky от Декабрь 21, 2015, 10:23:57 pm
Ни Фига билетик не маленький! )))))))))) прорешал вроде!!!
БУ - без док-а "Комплектация" (а зачем "Перемещение" ??) .Это ужасно, но пусть Приходка принимает Готовые Компы или Комплектующие.(ВидНоменклатуры). Иначе на задачу уйдёт пусть даже 1,5 часа, минимум-не позволительно на экз) Да и в условиях нету... 
И весьма объёмная задача СПР...   много времени заняла, блин.  Ставка в РС - стандартно.  Один расчётный период, МесяцНачисления- в Шапку.  1000 часов - сделал накопления в РН(остатки).  При начислении Компенсации смотрю, остаток >100 (для тестирования) и базу тут же...  Если есть - начисляю. Вопрос ...тут такой же где то был..: а РН освобождать... когда и как.  По логике можно сделать примочку, если чувак пересел на другую машину(новую) а та сломалась, тогда ВСЕ ЧАСЫ на старой МАШИНЕ - можно очистить)))  Машину на свалку. Вечно на одной не поездишь))) как думаете???   А ещё:  по условию Процент надо хранить, делаю в РС. Независимый, Период=Месяц по условию. Ещё там сказано, что в документе нужно указывать Процент...Прикинул так:  Если нету в Доке - берём из РС, если есть в Доке - смотрим на месяц(период), если больше - пишем в РС(новый для всех)...вроде так по условию. Не знаю - кто на Экзамене эту задачу решил, 3 часа уходит блин запросто!)))) и Отчёт хитрый, часы из ДанныхГрафика, Был штраф-тут же можно взять по ВР. Сумму Компенсации присоединяю Джойном...  Красиво вроде!)) ну и билет.

Отчет ОУ без характеристик. Ты их прицепил в запросе, но а в отчете нет. Почему?

Не пойму...как это ? ...имеется в виду в пользовательском режиме, Изменить Вариант...или что то другое
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Роман от Декабрь 22, 2015, 09:30:06 am
Ни Фига билетик не маленький! )))))))))) прорешал вроде!!!
БУ - без док-а "Комплектация" (а зачем "Перемещение" ??) .Это ужасно, но пусть Приходка принимает Готовые Компы или Комплектующие.(ВидНоменклатуры). Иначе на задачу уйдёт пусть даже 1,5 часа, минимум-не позволительно на экз) Да и в условиях нету... 
И весьма объёмная задача СПР...   много времени заняла, блин.  Ставка в РС - стандартно.  Один расчётный период, МесяцНачисления- в Шапку.  1000 часов - сделал накопления в РН(остатки).  При начислении Компенсации смотрю, остаток >100 (для тестирования) и базу тут же...  Если есть - начисляю. Вопрос ...тут такой же где то был..: а РН освобождать... когда и как.  По логике можно сделать примочку, если чувак пересел на другую машину(новую) а та сломалась, тогда ВСЕ ЧАСЫ на старой МАШИНЕ - можно очистить)))  Машину на свалку. Вечно на одной не поездишь))) как думаете???   А ещё:  по условию Процент надо хранить, делаю в РС. Независимый, Период=Месяц по условию. Ещё там сказано, что в документе нужно указывать Процент...Прикинул так:  Если нету в Доке - берём из РС, если есть в Доке - смотрим на месяц(период), если больше - пишем в РС(новый для всех)...вроде так по условию. Не знаю - кто на Экзамене эту задачу решил, 3 часа уходит блин запросто!)))) и Отчёт хитрый, часы из ДанныхГрафика, Был штраф-тут же можно взять по ВР. Сумму Компенсации присоединяю Джойном...  Красиво вроде!)) ну и билет.

Отчет ОУ без характеристик. Ты их прицепил в запросе, но а в отчете нет. Почему?

Не пойму...как это ? ...имеется в виду в пользовательском режиме, Изменить Вариант...или что то другое

Сравни отчеты. у тебя доделал. Там вычисляемое поле добавлено + в группировку включил поле Регион.
Но вот остаётся вопрос: "Необходимо создать отчет по анализу недоотгруженных заказов покупателей на
выбранную дату в разрезе выбранной характеристики."

В разрезе ВЫБРАННОЙ характеристики. Т.е. должно быть поле на форме отчета параметром. Как сделать не знаю.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Роман от Декабрь 22, 2015, 09:34:53 am
Вопрос к задаче. БУ этого билета. А надо ли делать сборку, перемещение? Или мы уже как бы сделали это всё и просто приходной приходуем произведенный товар или материал на любой склад?

Ну т.е. я вижу в решениях что мы просто делаем приходную и в ней указаны товар это или комплектующая. А нам не нужно фиксировать что произведено было на главном из материалов, потом перемещено на другую точку с себестоимостью материалов?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Декабрь 22, 2015, 10:20:06 am
Вопрос к задаче. БУ этого билета. А надо ли делать сборку, перемещение? Или мы уже как бы сделали это всё и просто приходной приходуем произведенный товар или материал на любой склад?

Ну т.е. я вижу в решениях что мы просто делаем приходную и в ней указаны товар это или комплектующая. А нам не нужно фиксировать что произведено было на главном из материалов, потом перемещено на другую точку с себестоимостью материалов?
Повторюсь, конечно, но думаю - Сборку надо.  :)
Хм, отчет. Делается жеж.
Ладно, свой вариант прикрепляю. Хотя СПР там не работает, т.к. была вышеописанная ошибка с ПВР Удержания, и я ее не побеждал, поэтому СПР в целом не смотреть. И, наверное, в ОУ не совсем правильный расчет недоотгруженных товаров (я брал, сколько надо отгрузить по заказу всего, а не только из поступившего). Но основные моменты вроде бы вполне рабочие.  :)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: zorky от Декабрь 22, 2015, 08:35:18 pm
Сравни отчеты. у тебя доделал. Там вычисляемое поле добавлено + в группировку включил поле Регион.
Но вот остаётся вопрос: "Необходимо создать отчет по анализу недоотгруженных заказов покупателей на
выбранную дату в разрезе выбранной характеристики."

В разрезе ВЫБРАННОЙ характеристики. Т.е. должно быть поле на форме отчета параметром. Как сделать не знаю.

Мм, сравнил! ) А в чём мулька? Не найдено поле Регион! Ошибка.  А чем не понравился мой вариант, когда Характеристики можно вытащить через "Изменить вариант" - добавить группировку по Полю (Регион,например) - и всё работает...   Через вычисляемое поле кто-то тут СТРОГО не советовал делать... ! по моему.
Авот у Алекса посмотрел. Круто.  В Запросе нет Характеристик. В Доке Заказ - тоже нету. Просто присоединяемся к Регистру с Характеристиками и вытаскиваем поле ЗначениеХарактеристики.
И вот вопрос, как всё таки предпочительнее с ними работать. Как у Романа?  Алекса)  Или как было: Ведь можно же в "Изменить Вариант" красиво вытащить поле, где выбирать Группировки по Характеристикам??? 

Название: Re: Билет 12. Спец по платформе V8
Отправлено: cheb73 от Февраль 10, 2016, 03:27:11 pm
Выкладываю свой вариант. Считаю, что 1000 часов это опечатка, делала без накопления отработанных часов в регистре накопления, сумму штрафа сразу считаю по виду расчета Неявка.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Aluvika от Февраль 18, 2016, 08:08:23 pm
Вопрос к задаче. БУ этого билета. А надо ли делать сборку, перемещение? Или мы уже как бы сделали это всё и просто приходной приходуем произведенный товар или материал на любой склад?

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

По БУ я бы читал задание следующим образом:

1. Сказано что нужно собирать готовые компьютеры "Сборкой"/"Комплектацией"? Ответ - нет, не сказано. Это отбирает главный ресурс на экзамене - время.
2. Поскольку п.1 не обязателен ввиду отсутствия прямых инструкций в тексте, то сборку можно осуществить через универсальный документ "Операция" (который все равно будем делать). Забираем со счета "Материалы", приходуем на "Товары" на нужный склад.
Таким образом, не надо покупать готовые компьютеры у поставщика и не надо делать документ комплектации/сборки. Про прием товаров черех приходную... это вообще не согласуется с текстом "Сборка готовых компьютеров происходит из отдельных комплектующих...". Мы НЕ покупаем готовые компьютеры, а собираем их у себя из закупленных ранее комплектующих (материалов).

Прошу принять вышеописанное как чистое ИМХО.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: cheb73 от Февраль 19, 2016, 07:19:35 am
Согласна, можно все сделать Операцией. Но Материалы оприходовать от поставщиков все равно нужно, не важно как Операцией или приходной накладной. Иначе контроль по остаткам у вас не пройдет в Расходной Накладной, да и себестоимость как-то считать нужно по материалам
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Февраль 19, 2016, 08:22:59 am
Согласна, можно все сделать Операцией...
А как насчет расчета себестоимости собираемых компов, и особенно - контроля остатков (который "надо делать всегда, не зависимо от условия задачи" (с) Белоусов) материалов, используемых при сборке? Я думаю, ответ на обсуждаемый вопрос кроется именно вот в этой необходимости, неявно вытекающей из общих принципов решения экзаменационных задач.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Aluvika от Февраль 19, 2016, 06:34:38 pm
Согласна, можно все сделать Операцией...
А как насчет расчета себестоимости собираемых компов, и особенно - контроля остатков (который "надо делать всегда, не зависимо от условия задачи" (с) Белоусов) материалов, используемых при сборке? Я думаю, ответ на обсуждаемый вопрос кроется именно вот в этой необходимости, неявно вытекающей из общих принципов решения экзаменационных задач.

Полагаю, все же задача допускает использовать некие допущения.
Как вариант, себес компа = сумма составляющих по закупочной цене.
Повторюсь, операция - только для готовых компьютеров, имитация "Сборки". Задача получается слишком емкой, если делать сборку + контроль материалов при сборке. Не думаю, что авторы задачи преследовали такую цель. Хотя, если есть лишних 20 минут на экзамене, можно и заморочиться.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Ads666sda от Март 29, 2016, 05:48:47 pm
Уважаемые специалисты, покритикуйте решение.
Спасибо
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Гакусей от Март 29, 2016, 07:09:40 pm
Уважаемые специалисты, покритикуйте решение.
Спасибо
посмотрел в части СПР

1. забыл галку "Базовое" в измерении Сотрудник ОН. По всем измерениям,  которые дальше будут участовать в отборе по измерениям при получении базы
   Измерения = Новый Массив;
   Измерения.Добавить("Сотрудник");
   Запрос.УстановитьПараметр("Измерение", Измерения);
надо ставить эту галку для индексации и ускорения.
2. Расчет после первичной записи надо выносить в общий модуль в экспортную процедуру.
3. Косяк в цикле при расчете ДН -два раза цикл по выборке, а про цикл по движениям забыл
   Пока Выборка.Следующий() Цикл
      СП.НомерСтроки = Запись.НомерСтроки;
      Пока Выборка.Следующий() Цикл
4. В ПВР ДН зачем-то в качестве базового ПВР указаны ДН, хотя достаточно только ОН. И там зависимость скорее по периоду  регситрации , а не действия, поскольку в условии сказано "процентом от начисленной в том же расчетном периоде", а не за тот же период.
5.Не совсем понял суть запроса по премии.Зачем-то посчитаны ЧасНачала и ЧасКонец, так и оставлены и больше нигде не использованы. Не вижу в запросе отбор по 1000 часов.
Ну еще есть момент, но он больше дискуссионный и ко всем участникам. Мне кажется, что автомобиль тут не нужен нигде от слова совсем. Ведь в отчете его нет, график тоже у всех фиксированный, совместительства нет. Имхо его нужно повыкидывать отовсюду да и все. И уж явно компенсация на ремонт не зависит от конкретного автомобиля, написано в условии. Так зачем его тащить в РН,РР и НЗ?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Март 29, 2016, 09:21:02 pm
Мне кажется, что автомобиль тут не нужен
Факт, что не нужен. Без дискуссий. Хотя, при сдаче удаленно, наверное, есть смысл, пояснить, почему так сделано.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Ads666sda от Март 30, 2016, 08:56:55 am
Уважаемые специалисты, покритикуйте решение.
Спасибо
посмотрел в части СПР

1. забыл галку "Базовое" в измерении Сотрудник ОН. По всем измерениям,  которые дальше будут участовать в отборе по измерениям при получении базы
   Измерения = Новый Массив;
   Измерения.Добавить("Сотрудник");
   Запрос.УстановитьПараметр("Измерение", Измерения);
надо ставить эту галку для индексации и ускорения.
2. Расчет после первичной записи надо выносить в общий модуль в экспортную процедуру.
3. Косяк в цикле при расчете ДН -два раза цикл по выборке, а про цикл по движениям забыл
   Пока Выборка.Следующий() Цикл
      СП.НомерСтроки = Запись.НомерСтроки;
      Пока Выборка.Следующий() Цикл
4. В ПВР ДН зачем-то в качестве базового ПВР указаны ДН, хотя достаточно только ОН. И там зависимость скорее по периоду  регситрации , а не действия, поскольку в условии сказано "процентом от начисленной в том же расчетном периоде", а не за тот же период.
5.Не совсем понял суть запроса по премии.Зачем-то посчитаны ЧасНачала и ЧасКонец, так и оставлены и больше нигде не использованы. Не вижу в запросе отбор по 1000 часов.
Ну еще есть момент, но он больше дискуссионный и ко всем участникам. Мне кажется, что автомобиль тут не нужен нигде от слова совсем. Ведь в отчете его нет, график тоже у всех фиксированный, совместительства нет. Имхо его нужно повыкидывать отовсюду да и все. И уж явно компенсация на ремонт не зависит от конкретного автомобиля, написано в условии. Так зачем его тащить в РН,РР и НЗ?

Спасибо за такой подробный разбор. Про автомобиль сам долго сомневался, но потом посмотрел разные решения и увидел, что он есть, ну и поставил.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Ads666sda от Март 30, 2016, 09:02:06 am

2. Расчет после первичной записи надо выносить в общий модуль в экспортную процедуру.


А на сколько критично, если я не вынесу в общий модуль?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Гакусей от Март 30, 2016, 12:59:46 pm

2. Расчет после первичной записи надо выносить в общий модуль в экспортную процедуру.


А на сколько критично, если я не вынесу в общий модуль?
Вроде такое решение считается каноничным. И якобы связано  с перерасчетами, которые возможно придется делать программно.
Понятно, что 3 балла за это не снимут
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Ads666sda от Март 30, 2016, 01:01:48 pm

2. Расчет после первичной записи надо выносить в общий модуль в экспортную процедуру.


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

Понятно, сейчас вот 13ый билет прорешал с учетом Ваших замечаний.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Гакусей от Март 30, 2016, 01:12:07 pm

2. Расчет после первичной записи надо выносить в общий модуль в экспортную процедуру.


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

Понятно, сейчас вот 13ый билет прорешал с учетом Ваших замечаний.
да вижу, как ты понял, там работы на пару минут.Проще сделать, чем отмазываться потом перед преподом. Только сразу лучше не писать в ОМ, там контекстная подсказка теряется. Тупо перенести в конце.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Ads666sda от Март 30, 2016, 01:21:16 pm

2. Расчет после первичной записи надо выносить в общий модуль в экспортную процедуру.


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

Понятно, сейчас вот 13ый билет прорешал с учетом Ваших замечаний.
да вижу, как ты понял, там работы на пару минут.Проще сделать, чем отмазываться потом перед преподом. Только сразу лучше не писать в ОМ, там контекстная подсказка теряется. Тупо перенести в конце.
ну я так и сделал, первичные проводки оставил, а остальную чепухню, после того ка дописал в документе, перенес в ОМ.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: axel_work от Апрель 20, 2016, 08:54:59 pm
Доброго дня!

Плиз почекайте мое произведение.  ОУ + БУ в этой задаче очень плохо совместимы - сделал галки ОУ и БУ , чтобы отлаживать можно было. Накладные вбиты по отдельности для разных задач.

Отличия:
ОУ - подглядел у Alex1248 - РН Заказы с 2-мя ресурсами. Вроде все красиво. Отчет получается по одной таблице остатков.
ПВХ не привязан в отчете, но так и должно быть, все работает.

БУ - как обычно. Отдельного дока для сборки нет, делал Операцией. Криминала не должно быть, так как про это ничего не сказано. Приходная ограничена только поступлением материалов, продукцию не закупает. У многих покупает. но это на мой взгляд неверно, ибо зачем тогда вся задача.

СПР - 1000 часов в месяце это да, 1С молодцы. Прочитал толкования, понял условие :) РН оборотный для хранения часов.
Прогул сам начисляет сумму, правда я не делал ее отрицательной, это ж не сторно.  Автомобили нигде не фигурируют - так как равносильно сотруднику. Часы пишу также в реквизит РР для компенсации, чтобы в отчете без танцев с бубном.

ЗЫ: Условие про процент компенсации сделал так - подтягивается в реквизит ТЧ Размер при виде расчета = Компенсация.
Была мысль записывать при проведении НЗ в РС, но как это дико, не стал так делать.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: SAM от Май 15, 2016, 12:41:50 am
Доброго времени суток!

Доделал 12-й билет, прошу критиковать.
ОУ: Вроде бы как у всех, 2 РН - Заказы и Остатки, ПВХ.

БУ. Вообще не вяжется с ОУ, пришлось делать реквизит в накладных - проведение по ОУ или по БУ. Сделал с документом Комплектация, надо попробовать эту задачу решить на время, реально ли успеть за 5 часов накодить и отладить.

СПР. Сначала решил "в лоб" с 1000 часов за месяц, потом почитал комментарии, исправил, только использую не оборотный регистр, а остатки. Не знаю насколько это правильно.

Название: Re: Билет 12. Спец по платформе V8
Отправлено: Гакусей от Май 15, 2016, 01:17:55 pm
Где-то читал по поводу документа Операция, что могут придраться по поводу того, что при его копировании не копируются движения. Лучше добавить на всякий случай код типа
Процедура ПриКопировании(ОбъектКопирования)
     Набор = ОбъектКопирования.Движения.Основной;
    Набор.Прочитать();   
    НаборТек = Движения.Основной;
    НаборТек.Загрузить(Набор.Выгрузить());   
КонецПроцедуры
А еще вопрос, насколько кошерно проставлять период Операции в ПриЗаписи МО? Есть еще интересная процедура модуля формы ПередЗаписьюНаСервере. Есть ли в этом принципиальная разница, не соображу.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: SAM от Май 16, 2016, 10:24:48 pm
Лучше добавить на всякий случай код типа
Процедура ПриКопировании(ОбъектКопирования)
     Набор = ОбъектКопирования.Движения.Основной;
    Набор.Прочитать();   
    НаборТек = Движения.Основной;
    НаборТек.Загрузить(Набор.Выгрузить());   
КонецПроцедуры

Спасибо за совет, буду использовать этот код, лишним не будет.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: freez1301 от Июнь 29, 2016, 04:59:56 pm
ОУ:
РН Заказы, изм. Номенклаутра, Партия, рес. Количество (рег. Заказ, ПТУ)
РН Остатки изм. Номенклаутра, Партия, рес. Количество, Сумма (рег. РТУ, ПТУ)
Заказ в ТЧ ПТУ и в шапке РТУ
БУ:
ПС Товары, колич., суб. Номенклатура, Склад. Сч. Материалы, колич., суб. Номенклатура. Сч. ПрибылиУбытки, колич., суб. Номенклатура, оборотное
У Номен. видНоменклатуры (изделие, комплектующая). ПТУ приходует только комплект. Операция собирает изделие через сч. ОсновноеПроизводство
СПР:
что-то со сторно никак не получается.
РС Графики, изм. Дата, рес. Часы, Дни
ПВР ОН использует период, не зависит от базы. Эл-ты: Оклад, Невыход
ПВР ДН зависит от базы по периоду рег-ции, База по ОН. Эл-т Компенсация, база по Окладу
РР ОН период действия, связь с графиком. Изм. Сотрудник, рес. Результат, РабочиеДни, рек. Размер
РР ДН базовый период, изм. Сотрудник, рес. Результат, рек. Размер
Название: Re: Билет 12. Спец по платформе V8
Отправлено: AV99 от Июль 07, 2016, 05:32:29 pm
Доброго времени суток, может кто-нибудь объяснить почему задачу по ОУ многие делают на 2-х РН, когда спокойно можно сделать на одном? Был бы признателен за объяснение.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Escoreal от Июль 09, 2016, 10:05:10 pm
Доброго времени суток, может кто-нибудь объяснить почему задачу по ОУ многие делают на 2-х РН, когда спокойно можно сделать на одном? Был бы признателен за объяснение.
Конкретно в этой задаче по ОУ или вообще? В этой задаче ОУ по первому РН документы "Заказ покупателя" формируют движения типа приход, документы "Приходная накладная" формируют движения типа расход по одному набору измерений. Для проведения приходной накладной требуется выполнить только контроль отрицательных остатков. Поэтому на РН ведется только количественный учет.

Информация из второго РН (приход - "Приходная накладная", расход - "Расходная накладная) используется для контроля отрицательных остатков и для расчета себестоимости. Поэтому у него 2 ресурса.

А ты как хочешь сделать на одном регистре? опиши свое решение, чтоб регистр в ноль закрывался.

__________________________________________________________________________________

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

Движения.РН.Очистить();
Движения.РН.Записать();

Блокировка = Новый БлокировкаДанных;
Элемент = Блокировка.Добавить("РегистрНакопления.РН");
...
Блокировка.Заблокировать();

В этом случае получается, что другой пользователь гипотетически может не увидеть в РН движения документа. Скажем,  во время перепроведения первым пользователем расходной накладной второй пользователь увидит, что, хотя товар и был списан ранее по расходной, на складе товар есть (т. к. запрет на чтение/запись ставится уже ПОСЛЕ записи пустого набора). Разве это правильно?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Михаил Проходцев от Июль 09, 2016, 11:46:57 pm

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

Движения.РН.Очистить();
Движения.РН.Записать();

Блокировка = Новый БлокировкаДанных;
Элемент = Блокировка.Добавить("РегистрНакопления.РН");
...
Блокировка.Заблокировать();

В этом случае получается, что другой пользователь гипотетически может не увидеть в РН движения документа. Скажем,  во время перепроведения первым пользователем расходной накладной второй пользователь увидит, что, хотя товар и был списан ранее по расходной, на складе товар есть (т. к. запрет на чтение/запись ставится уже ПОСЛЕ записи пустого набора). Разве это правильно?
Если Вы имеете в виду, что другой документ может увидеть тот товар, который был в Расходной накладной ранее и соответственно попытаться списать его, то для реализации такой блокировки обычно используют следующую конструкцию:
Движения.РН.БлокироватьДляИзменения=Истина;
Движения.РН.Очистить();
Движения.РН.Записать();

Блокировка = Новый БлокировкаДанных;
Элемент = Блокировка.Добавить("РегистрНакопления.РН");
...
Блокировка.Заблокировать();
В этом случае при записи пустого набора записей при установленном свойстве БлокироватьДляИзменения регистр будет заблокирован иммено по "старым" (очищаем) позициям документа. Другой вопрос, что такая конструкция не всегда однозначно принимается проверяющими на экзамене. И как лучше делать на экзамене, единого мнения нет.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Escoreal от Июль 10, 2016, 12:31:28 am


Если Вы имеете в виду, что другой документ может увидеть тот товар, который был в Расходной накладной ранее и соответственно попытаться списать его, то для реализации такой блокировки обычно используют следующую конструкцию:
Движения.РН.БлокироватьДляИзменения=Истина;
Движения.РН.Очистить();
Движения.РН.Записать();

Блокировка = Новый БлокировкаДанных;
Элемент = Блокировка.Добавить("РегистрНакопления.РН");
...
Блокировка.Заблокировать();
В этом случае при записи пустого набора записей при установленном свойстве БлокироватьДляИзменения регистр будет заблокирован иммено по "старым" (очищаем) позициям документа. Другой вопрос, что такая конструкция не всегда однозначно принимается проверяющими на экзамене. И как лучше делать на экзамене, единого мнения нет.

Я имел в виду, что блокировать регистр надо не после записи пустого набора, а перед этим, т. е. вместо
Движения.РН.Очистить();
Движения.РН.Записать();

Блокировка = Новый БлокировкаДанных;
Элемент = Блокировка.Добавить("РегистрНакопления.РН");
...
Блокировка.Заблокировать();

писать так


Блокировка = Новый БлокировкаДанных;
Элемент = Блокировка.Добавить("РегистрНакопления.РН");
...
Блокировка.Заблокировать();

Движения.РН.Очистить();
Движения.РН.Записать();


Upd

Движения.РН.БлокироватьДляИзменения=Истина;
Движения.РН.Очистить();
Движения.РН.Записать();

Блокировка = Новый БлокировкаДанных;
Элемент = Блокировка.Добавить("РегистрНакопления.РН");
...
Блокировка.Заблокировать();

А зачем блокировать в РН пустой набор измерений?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Михаил Проходцев от Июль 10, 2016, 02:10:41 am
Мы блокируем не пустой набор записей! А по тем позициям, которые были в документе (старые движения) Очень советую почитать эту ветку: http://forum.chistov.pro/index.php?topic=1999.0
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Escoreal от Июль 11, 2016, 01:02:30 pm
Мы блокируем не пустой набор записей! А по тем позициям, которые были в документе (старые движения) Очень советую почитать эту ветку: http://forum.chistov.pro/index.php?topic=1999.0
Большое спасибо за информацию!
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Анатолий от Сентябрь 02, 2016, 05:51:45 pm
При новой методике проведения, когда проверяем ушли в минус или нет: Для чего соединяемся с Доком, и так ведь из регистра получаем данные по измерениям только которые есть в Доке.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Анатолий от Сентябрь 05, 2016, 02:04:50 am
Скажите кто знает:
Для чего в регистре расчета ОснНач "Значение графика" выбираем? Что это дает? В этой задаче у нас два значения, но мы можем выбрать один. Второй я так понимаю все равно посчитается, хоть его и не выбирали?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: erdem.badluev от Октябрь 31, 2016, 12:18:10 pm
мой вариант решения.  :)

UPD: см. ниже
|
V
Название: Re: Билет 12. Спец по платформе V8
Отправлено: erdem.badluev от Ноябрь 15, 2016, 06:05:59 am
Мой обновленный вариант решения...
Буду рад критике
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Aluvika от Ноябрь 23, 2016, 05:55:14 pm
Ребят, привет!

Что-то немного плыву с условием про 1000 часов в СПР... или туплю.
Я понимаю это так: если на начало периода регистрации компенсации есть 1000+ часов, то начисляется компенсация.
Если заводить оборотный РН (у некоторых РН остатков, но это дискусионный вопрос):
я беру обороты виртуальной таблицы "ОтработанныеЧасыОборот" и ограничиваю в виртуальных параметрах дату конца параметром "КП" = Новый Граница(ПериодРегистрации, ВидГраницы.Исключая).
Правильно ли так будет?

Посмотрев решение SAE и чье-то еще в этой ветке, видел конструкцию вида:
Если (Окр((Выборка.ЧасыКонец/1000),2,1)-Окр((Выборка.ЧасыНачало/1000),2,1)) > 0 тогда
Запись.Результат = Выборка.База*Выборка.Процент/100;
КонецЕсли;

Собственно, в чужом решении берутся обороты до текущего месяца, и обороты текущего и проверяется это условие.

Как вы обходили это условие?

Спасибо.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Ноябрь 23, 2016, 10:50:11 pm
если на начало периода регистрации компенсации есть 1000+ часов, то начисляется компенсация.
Если я правильно понял написанное, то это не правильно. Получается, что при достижении 1000 один раз, СО СЛЕДУЮЩЕГО МЕСЯЦА каждый месяц будет начисляться компенсация?
И почему начало периода регистрации (если не вникать в прочие нюансы я задачи, а я их уже подзабыл, то явно напрашивается период действия, и никак не регистрации), если начислить эту 1000 надо именно в том месяца, когда она наезжена, а не в следующем?
В общем, я бы так сформулировал. Вариант для оборотного РН. Если ОКР(Наезжено часов на КП / 1000, 0) > ОКР(Наезжено часов на НП / 1000, 0), тогда начисляем компенсацию.
Для остаточного. Если Незачтенный остаток часов для компенсации на КП >= 1000, то начисляем компенсацию и остаток уменьшаем на 1000.

ПС. Формула для оборотного регистра НЕ КОРРЕКТНА. Рекомендую использовать остаточный РН.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Aluvika от Ноябрь 24, 2016, 02:02:29 pm
alex1248, спасибо за ответ!

1. По поводу каждый раз начислять компенсацию или нет: я исхожу из здравого смысла - человек на своей машине наездил в данной компании больше 1000км. По логике ему надо компенсировать часть издержек на ремонт и поддержание состояния автомобиля (чтобы она и дальше ездила нормально), ведь это естественный износ. Исходя из такой трактовки я бы начислял компенсацию каждый период, начиная с превышения в 1000часов. Тут, наверное, стоило бы уточнить у экзаменатора.
Я так понимаю, если бы компенсация была единоразовой, то делали бы РН остатков: в плюс делали пробег при проведении "Начисления", в минус на 1000 при расчете записей РР (при превышении, конечно).

2. По условию "В одном документе могут быть данные только за текущий расчетный период". У компенсации нет периода действия => ПериодДействия=ПериодРегистрации при условии что у РР период "месяц" (так в этой задаче и есть). Другими словами, если в документе период регистрации 01.08.16, то период регистрации (и период действия) у компенсации будет точно 01.08.16.

3. Но у меня тоже, как я понимаю, ошибка. Я не учитываю движения текущего документа, т.е. хорошо бы было взять период оборотов РН на КонецМесяца(ПериодРегистрации).

К примеру:


- Пробег на начало 01.08.16 был 900часов
- Мы сделали начисление 01.08.16, и часы стали = 900 + 176 = 1076 (т.е. превышение!)
- Мы взяли обороты на конец месяца (31.08.16 23:59:59) и они оказались 1076
- т.к. 1076>1000, начислили компенсацию в ПР 01.08.16


Все-таки пока нет полного понимания как точно правильно.
В любом случае, еще раз спасибо.

Может кто-то еще прокомментирует?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Ноябрь 24, 2016, 04:13:41 pm
По поводу каждый раз начислять компенсацию или нет
Трактовка экзаменаторов именно такая - каждая очередная наезженная 1000 км влечет начисление компенсации именно в том месяце, в котором эта 1000 была достигнута. Пока нет следующей 1000, начисления нет. Где-то на этом форуме есть отзывы тех, кому на экз попадалась эта задача, так что это не моё ИМХО, а достаточно надежная информация.
Да, пусть будет ПР, который всё равно совпадает с ПД.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Aluvika от Ноябрь 24, 2016, 04:18:48 pm
alex1248, теперь понятно почему именно такая формула
Спасибо огромное!
Название: Re: Билет 12. Спец по платформе V8
Отправлено: verbatium80 от Декабрь 16, 2016, 11:57:25 am
Мой обновленный вариант решения...
Буду рад критике
Я думаю что, на счете ПрибылиУбытки количественный учет не обязателен. Количество проданного для отчета можно со счетов Товары и Материалы получить.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: verbatium80 от Декабрь 16, 2016, 11:58:59 am
Мой вариант решения. Буду рад любой критике. На  автозаполнение табличных частей Документов прошу не обращать внимания. Это сделано для  контроля наличия
Название: Re: Билет 12. Спец по платформе V8
Отправлено: pasha3005 от Декабрь 30, 2016, 04:14:59 pm
Коллеги, снова подниму вопрос про 1000 часов в СПР.
Знаю, что уже неоднократно обсуждалось, и, вроде как, за эталон было принято решение уважаемого SAE с вот такой вот конструкцией для расчета премии:

Если (Окр((Выборка.ЧасыКонец/1000),2,1)-Окр((Выборка.ЧасыНачало/1000),2,1)) > 0 тогда
       Запись.Результат = Выборка.База*Выборка.Процент/100;
КонецЕсли;

Предположим, что сейчас я ввожу первое начисление ЗП сотруднику. Указываю, что он отработал 120 часов, и тут же начисляю премию, в этом же документе.
По предложенной формуле получается, что премия ему будет начислена, хотя никаких 1000 часов он не наездил. Так как 120/1000 больше, чем 0/1000.

Подскажите пожалуйста, я чего-то не понимаю, или предложенное решение не совсем корректно себя ведет?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Декабрь 30, 2016, 05:26:21 pm
...вроде как, за эталон было принято решение уважаемого SAE с вот такой вот конструкцией для расчета премии:

Если (Окр((Выборка.ЧасыКонец/1000),2,1)-Окр((Выборка.ЧасыНачало/1000),2,1)) > 0 тогда
       Запись.Результат = Выборка.База*Выборка.Процент/100;
КонецЕсли;
Про эталоны не слышал (надеюсь, SAE не обидится). Формула не похожа на корректную для данной ситуации.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: pasha3005 от Декабрь 30, 2016, 07:48:58 pm
Про эталоны не слышал (надеюсь, SAE не обидится). Формула не похожа на корректную для данной ситуации.

Согласен, что не похожа. Я с этой задачей второй день сижу, всё пытался найти идеальное решение через оборотный регистр накопления с факт часами.
К сожалению, получается, что ни представленная формула, ни её вариации, типа округления в меньшую сторону без знаков после запятой и пр. - не удовлетворяют условию задачи в полной мере, если мы трактуем её таким образом (об этом Вы написали на предыдущей странице):

Трактовка экзаменаторов именно такая - каждая очередная наезженная 1000 км влечет начисление компенсации именно в том месяце, в котором эта 1000 была достигнута. Пока нет следующей 1000, начисления нет. Где-то на этом форуме есть отзывы тех, кому на экз попадалась эта задача, так что это не моё ИМХО, а достаточно надежная информация.

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

В общем, решить удалось только через регистр остатков - каждый раз увеличиваем ФактЧасы, и тут же проверяем, не превысили ли они 1000. Если да - делаем расход на 1000.
Вроде бы, всё правильно. Решение всего билета прикрепляю, вдруг кому понадобится.

Если заметите какие-либо недочёты - буду очень признателен!
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Декабрь 30, 2016, 08:17:29 pm
... решить удалось только через регистр остатков - каждый раз увеличиваем ФактЧасы, и тут же проверяем, не превысили ли они 1000. Если да - делаем расход на 1000.
Я именно так и решал при подготовке. Считаю, что это оптимальный вариант.
Подкорректировал старое сообщение, где под напором коллег соглашался с использованием оборотного РН.  :)

ПС. Часы надо проверять не на превышение 1000, а на больше или равно.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Liya_Anubis от Январь 17, 2017, 05:18:41 pm
В задаче СПР в для начисления компенсации за ремонт нет условия, что компенсация должна быть начислена за каждые 1000 часов наезда. Вероятно, что факт наезда 1000 часов дает сотруднику право на получение компенсации, т.е. с того месяца как пошло превышение ему может быть начислена эта компенсация. А начислять её или нет решает пользователь когда в документе Начисление ЗП заводит соответствующий вид расчета. Также возможно, во всех периодах в течение которых он наезжал свои 1000 часов у него были прогулы, тогда по условию задачи ему компенсация не положена и право на эту компенсацию может возникнуть только на 5000 часов.
Также в задаче сказано "наездил", а не отработал, потому копить часы по данным рабочего времени не правильно, просится отдельный документ, который будет делать движения только в регистр накопления.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: erdem.badluev от Февраль 01, 2017, 12:59:07 pm
Мой вариант решения. 1000 часов сделал на регистре расчета отдельным видом расчета.
Но если начислять за каждые 1000, то решение не верное.
Ориентировался по условию: "Если водитель в расчетном периоде наездил больше 1000 часов, то ему должна быть начислена компенсация" - то есть данные должны браться за начисляемый период (месяц), значит регистр оборотный должен быть, а не остатки (которые использовались бы для каждых 1000), и компенсация должна быть вроде как одна...

Использовал механизм базы и в ресурс для базы записывал то самое значение выработки, и в базу для компенсации указывал эту выработку за текущий период расчета, также базой для компенсации сделал штраф - для галки был штраф или нет. при расчете базу по виду расчета разрезаю и проверяю выработка или штраф (по тексту запроса станет более понятно).

Буду рад критике
 :)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Февраль 01, 2017, 04:48:06 pm
... то есть данные должны браться за начисляемый период (месяц) ...
Т.е вы имеете ввиду, что начисляете тогда, когда 1000 часов наезжено именно в течение расчетного месяца - с 1-го по последнее число этого месяца?   :)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Liya_Anubis от Февраль 01, 2017, 08:56:17 pm
erdem.badluev, а зачем условие по периоду регистрации?

Цитировать
         |ИЗ
         |   РегистрРасчета.Начисления.ДанныеГрафика(
         |         Регистратор = &Регистратор
         |            И ПериодРегистрации = &ПериодРегистрации) КАК НачисленияДанныеГрафика
Цитировать
      Запрос.УстановитьПараметр("ПериодРегистрации", НачалоМесяца(Ссылка.Дата));
      Запрос.УстановитьПараметр("Регистратор", Ссылка);
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Liya_Anubis от Февраль 01, 2017, 09:25:08 pm
Зачем в компенсации со штрафом извращаться, ведь в условии задачи сказано
Цитировать
Компенсация начисляется только в случае отсутствия невыходов, однако контролировать программным образом данное обстоятельство не требуется.
Вид расчета "Выработка", для хранения времени это совсем уже извращение, так делать нельзя.
Штраф в допначислениях, по-моему, тоже ни туда ни сюда, лучше в основных сделать, там данные графика получать нужно, а в допначислениях данные о количестве дней не получить и настроена зависимость от базы, которая не нужна штрафу
Название: Re: Билет 12. Спец по платформе V8
Отправлено: erdem.badluev от Февраль 02, 2017, 04:09:13 am
... то есть данные должны браться за начисляемый период (месяц) ...
Т.е вы имеете ввиду, что начисляете тогда, когда 1000 часов наезжено именно в течение расчетного месяца - с 1-го по последнее число этого месяца?   :)
Да. По условию задачи так понимаю.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: erdem.badluev от Февраль 02, 2017, 04:10:09 am
erdem.badluev, а зачем условие по периоду регистрации?

Цитировать
         |ИЗ
         |   РегистрРасчета.Начисления.ДанныеГрафика(
         |         Регистратор = &Регистратор
         |            И ПериодРегистрации = &ПериодРегистрации) КАК НачисленияДанныеГрафика
Цитировать
      Запрос.УстановитьПараметр("ПериодРегистрации", НачалоМесяца(Ссылка.Дата));
      Запрос.УстановитьПараметр("Регистратор", Ссылка);

Индекс у регистров расчета построен по регистратору и периоду регистрации, так быстрее сработает.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: erdem.badluev от Февраль 02, 2017, 04:42:54 am
Зачем в компенсации со штрафом извращаться, ведь в условии задачи сказано
Цитировать
Компенсация начисляется только в случае отсутствия невыходов, однако контролировать программным образом данное обстоятельство не требуется.
Вид расчета "Выработка", для хранения времени это совсем уже извращение, так делать нельзя.
Штраф в допначислениях, по-моему, тоже ни туда ни сюда, лучше в основных сделать, там данные графика получать нужно, а в допначислениях данные о количестве дней не получить и настроена зависимость от базы, которая не нужна штрафу
Я сделал зависимость по базе у компенсации от штрафа для определения был штраф или нет, чтобы потом его в отчет вытащить. Штраф зависит от НеВыхода, который в результат записывает количество дней, а штраф умножает это количество дней не выхода на 5000.
В отчете галку БылШтраф правильней было бы устанавливать в запросе по наличию начисления Штраф.
Вид расчет Выработка сделан для ввода тех самых 1000 часов.
Логика была такая: если мы проверяем наездил ли сотрудник в текущем месяце начисления более 1000 часов без учета ранее наезженного (без накопления остатков), тогда нужен оборотный регистр для учета тех самых часов. Но, зачем это делать на оборотном регистре, если регистр расчета прекрасно с этой задачей справится: вводим Выработку, обороты по ней по текущему месяцу начисления получим через базу для компенсации, что и требовалось нам для вывода сколько было наезжено в отчете.

Это решение с оговоркой: мы проверяем количество наезженных часов за текущий месяц начисления без накопления часов за предыдущие периоды.

Вопрос у меня такой: моя реализация с этой оговоркой на регистрах расчета правильна ли, или всё же нужно использовать оборотный регистр? И в требованиях одна из ошибок: "Решение задач накопления на регистре расчета" - но в этом решении выработка не накапливается, а проверяются обороты за конкретный период расчета.

Сейчас думаю, что всё же решение не верное  :( у SAE на оборотном регистре сделано.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Февраль 02, 2017, 07:57:58 am
... то есть данные должны браться за начисляемый период (месяц) ...
Т.е вы имеете ввиду, что начисляете тогда, когда 1000 часов наезжено именно в течение расчетного месяца - с 1-го по последнее число этого месяца?   :)
Да. По условию задачи так понимаю.
Посчитайте, сколько часов в месяце, даже если водитель будет работать круглосуточно и без выходных.  :D
Экзаменаторы считают, что в данной задаче необходимо накапливать часы, и выплачивать компенсацию в каждом месяце, в котором общий пробег становится больше очередной (накопленной) тысячи.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Февраль 02, 2017, 08:00:20 am
Зачем в компенсации со штрафом извращаться, ведь в условии задачи сказано
Цитировать
Компенсация начисляется только в случае отсутствия невыходов, однако контролировать программным образом данное обстоятельство не требуется.
Вид расчета "Выработка", для хранения времени это совсем уже извращение, так делать нельзя.
Штраф в допначислениях, по-моему, тоже ни туда ни сюда, лучше в основных сделать, там данные графика получать нужно, а в допначислениях данные о количестве дней не получить и настроена зависимость от базы, которая не нужна штрафу
... Штраф зависит от НеВыхода, который в результат записывает количество дней, а штраф умножает это количество дней не выхода на 5000 ...
Кстати, вот, напомнили, что там еще фигурирует.
Где-то писали конкретно, что экзаменаторы рекомендуют не создавать разные ВР для невыхода и штрафа, использовать один.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: erdem.badluev от Февраль 02, 2017, 11:53:14 am

Спасибо!

Значит документ НачислениеЗарплаты  должен делать приход на ФактЧасов (регистр накопления остатки) на количество фактически отработанных часов взятых из данных графика, затем проверять остаток этих ФактЧасов на конец начисляемого периода если больше 1000, то компенсация..., и расход ФактЧасов 1000. Так получается?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Февраль 02, 2017, 12:49:44 pm

Спасибо!

Значит документ НачислениеЗарплаты  должен делать приход на ФактЧасов (регистр накопления остатки) на количество фактически отработанных часов взятых из данных графика, затем проверять остаток этих ФактЧасов на конец начисляемого периода если больше 1000, то компенсация..., и расход ФактЧасов 1000. Так получается?
Да.
Я бы еще запретил ввод отрицательных часов, чтобы не контролировать возможную корректировку введенных ранее часов.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: s0u1941 от Февраль 07, 2017, 05:04:36 pm
Покритикуйте, пожалуйста, задачку по СПР
Название: Re: Билет 12. Спец по платформе V8
Отправлено: s0u1941 от Февраль 08, 2017, 01:42:54 pm
И ОУ
Название: Re: Билет 12. Спец по платформе V8
Отправлено: CeHbKA от Февраль 14, 2017, 02:00:25 pm
Осилил наконец-то СПР

2 суток рвало башку с этими часами. У SAE наткнулся на ошибку, как тут и писали - всё время компенсацию считает.
Задача - бред, отчёт - бред. Решение - такой же бред (на мой взгляд)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: dimon1210 от Апрель 10, 2017, 03:42:48 pm
Вопрос по отчету БУ. На каком счете делать оборотное субконто "Номенклатура". "Прибыли и убытки" или "Покупатели". По мне, так логичнее делать на "Покупатели". Кто как думает?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: alex1248 от Апрель 10, 2017, 04:49:09 pm
на "Покупатели"
Почти недопустимый вариант.
Или у вас пономенклатурный учет расчетов?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: olchik от Апрель 13, 2017, 03:23:04 pm
Просмотрела сейчас все билеты, пытаясь найти ПР с перерасчетом и не нашла... Пара задач с отчетом по перерасчету и все.... Нету что ли? :-\
Название: Re: Билет 12. Спец по платформе V8
Отправлено: White от Апрель 24, 2017, 11:15:58 pm
Сделал оперчасть на одном регистре накопления:
измерения - заказ, номенклатура
ресурсы - Закуплено, Отгружено, Себестоимость (отгрузок)

Документ.Заказ делает приход, заполняет ресурс Закуплено
Документ.ПриходнаяНакладная делает расход по всем трем ресурсам, Закуплено = Отгружено
Документ.РасходнаяНакладная делает приход в Отгружено и себестоимость.

Единственное что надо брать потом остатки по "отгружено" с минусом и всё.

есть критики данного подхода?
может кто делал подобное на экзамене, что сказал проверяющий?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: TUBORG14 от Июнь 10, 2017, 05:23:41 pm
Сдал спеца 09.06.17. Хочу поделиться своими решениями билетов. Спасибо всем участникам за обсуждение и выкладываемые решения. Это серьезная помощь в подготовке к экзамену.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Clition от Сентябрь 24, 2017, 07:57:18 am
"Компенсация начисляется только в случае отсутствия невыходов, однако контролировать программным образом данное обстоятельство не требуется."
Если не требуется контролировать, то зачем вообще упоминается условие по невыходам?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Clition от Сентябрь 24, 2017, 08:49:39 am
Сдал спеца 09.06.17. Хочу поделиться своими решениями билетов. Спасибо всем участникам за обсуждение и выкладываемые решения. Это серьезная помощь в подготовке к экзамену.
Понравилось Ваше решение СПР.
Проверка на 1000р., я так понимаю, немного не доделана.

В этой ветке писалось о том, что для штрафа и невыхода можно (или даже нужно) использовать один ВР. Не представляю как это сделать корректно. С одной стороны этот ВР должен вытеснять Оклад, с другой стороны это удержание, которое не понятно как учитывать в РР.ОН. С минусом плохо, получится неразбериха, если будет добавлено сторно, с плюсом вообще бред, а не регистр получится. Логично удержание хранить в отдельном регистре, но тогда ничего не выйдет с вытеснением. С двумя ВР всё встает на свои места.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Адам от Декабрь 06, 2017, 08:07:45 pm
Просьба кому не лень посмотреть решение 12 билета
Название: Re: Билет 12. Спец по платформе V8
Отправлено: andrig от Февраль 26, 2018, 08:53:23 am
Мои решения после сдачи.

В ПР сложный отчет. Заморачиваться не стал.
Если Невыход, то просто списываю все наработанные часы.
Соответственно Компенсация за ремонт выплачивается если нет Невыхода по умолчанию.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: NICzzzZ от Январь 12, 2019, 09:44:00 pm
Коллеги, доброго! Решенный билет ++  :) Буду рад обратной связи.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Unique от Июнь 28, 2019, 11:09:56 am
Решённый билет 12. Буду рада комментариям, особенно СПР. Наезженные часы заводила через регистр остатков.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Fontmillet от Июль 05, 2019, 05:10:52 pm
А кто-нибудь сдавался по этому билету из присутствующих? Прокатывает ли вообще РН в расчетах и нужен ли он вообще? Отработанные часы у нас же хранятся в регистре расчета и можно получить количество отработанных часов из данных графика по условию ПериодРегистрации < &ПериодРегистрации - это до начисления,  ПериодРегистрации <= &ПериодРегистрации - это после начисления. Соответственно свернув по сотруднику и суммированием часов. И уже анализировать перевал за тысячу в данном периоде.
Конечно это медленнее, но и задача же не оперативная, да и отработанные часы  - показатель сугубо расчетного регистра. И где вы брали "ОтработаноЧасов" для отчета, если использовали РН и минусовали 1000 при начислении компенсации?
Никто не в курсе, что экзаменаторы вообще говорят по поводу использования в данной задачи РН?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: серж от Июль 13, 2019, 03:48:26 pm
А кто-нибудь сдавался по этому билету из присутствующих? Прокатывает ли вообще РН в расчетах и нужен ли он вообще?
А что еще за регистр накопления в расчетах, для чего он там нужен поясните ?
 Я решил эту задачу за 1 час, ничем особенным от всех остальных не отличается вроде.
PS. 1000 часов как я понял это типа опечатки, в расчетном периоде (месяц) не может быть 1000 часов, поэтому я считаю их как 100 часов.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: letyurij от Июль 13, 2019, 07:09:20 pm
1000 — это не опечатка. Они накапливаются несколько месяцев. Потом обнуляются. Проще всего это сделать на регистре накопления.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: серж от Июль 14, 2019, 11:55:05 am
1000 — это не опечатка. Они накапливаются несколько месяцев. Потом обнуляются. Проще всего это сделать на регистре накопления.

Т.е. "в расчетном периоде наездил больше 1000 часов" нужно читать как "в расчетном периоде нарастающий итог фактических часов превысил 1000" ?
 Ну тогда добавляем еще один ресурс в регистр начисления "Факт нарастающим итогом", и считаем его по базе "Оклад" без указания начала базового периода.
Белоусов говорит "Если можно решить задачу на 1 регистре, значит это правильное решение. Добавление избыточных регистров - ошибка".
Название: Re: Билет 12. Спец по платформе V8
Отправлено: letyurij от Июль 14, 2019, 06:22:49 pm
Человек отработал 40 лет.  Если ты считаешь свой вариант более оптимальным, чем добавление регистра остатков, решай на ресурсе регистра расчетов.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: серж от Июль 14, 2019, 07:09:18 pm
Человек отработал 40 лет.  Если ты считаешь свой вариант более оптимальным, чем добавление регистра остатков, решай на ресурсе регистра расчетов.
Остатков ? Там где-то в условии еще и сказано, что надо накапливать и списывать факт. часы ??
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Alexey_89 от Сентябрь 05, 2019, 12:03:17 pm
Мда, задача по СПР очень нестандартная. Внимательно изучил всю тему, ясного решения не нашел. Не претендую на правильность решения, но возможно, кто то найдет для себя что то нужное:
Оклад - стандартно (часы * ставка). Фактические часы каждый раз пишутся в регистр накопления (только обороты)
Невыход - в ПВР "Основные начисления", вводится пользователем, сумма по нему не рассчитывается - этот вид расчета является только базой для штрафа и вытесняет оклад.
Штраф - в ПВР "Удержания", создается автоматически при проведении, если требуется, рассчитывается по формуле: 5000*дни невыхода
Компенсация - в ПВР "Дополнительные начисления", создается автоматически при проведении, если сумма часов превысила 1000. В момент превышения 1000 часов добавляется запись -1000.
 Не смог реализовать условие задачи "Компенсация начисляется только в случае отсутствия невыходов, однако контролировать программным образом данное обстоятельство не требуется". Тут логично, что у вида расчета "Компенсация" вытесняющим по периоду регистрации должны быть виды расчета "Невыход" или "Штраф". Но настроить это в ПВР мне не удалось. Надеюсь, кто-нибудь сможет это реализовать - в задаче это условие не просто так вставлено.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: серж от Сентябрь 05, 2019, 09:04:10 pm
Не смог реализовать условие задачи "Компенсация начисляется только в случае отсутствия невыходов, однако контролировать программным образом данное обстоятельство не требуется". Тут логично, что у вида расчета "Компенсация" вытесняющим по периоду регистрации должны быть виды расчета "Невыход" или "Штраф".
Так проверь перед расчетом Компенсации размер результата по виду начисления Невыход. Если его нет, значит можно начислять.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: DanJer74 от Сентябрь 06, 2019, 07:39:37 am
Не смог реализовать условие задачи "Компенсация начисляется только в случае отсутствия невыходов, однако контролировать программным образом данное обстоятельство не требуется". Тут логично, что у вида расчета "Компенсация" вытесняющим по периоду регистрации должны быть виды расчета "Невыход" или "Штраф".
Так проверь перед расчетом Компенсации размер результата по виду начисления Невыход. Если его нет, значит можно начислять.
Сдается мне, что данное условие подразумевает контроль пользователем, поэтому лишние действия делать не нужно.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: серж от Сентябрь 06, 2019, 10:56:01 am
Сдается мне, что данное условие подразумевает контроль пользователем, поэтому лишние действия делать не нужно.
Полагаю, что данное условие означает, что не нужно программно запрещать пользователю добавлять начисление с видом Компенсация, если есть невыходы. Иначе для чего тогда вообще эта фраза в условии ?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Alexey_89 от Сентябрь 06, 2019, 11:02:42 am
Программный контроль исключается - 100%. Поэтому проверку в расчетах добавлять нельзя. То, что этот факт контролируется пользователем - вряд-ли, т.к. другие аналогичные ситуации в условиях задач не встречаются. Тут заковырка именно в конструкции метаданных... GROOVY бы сюда.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: серж от Сентябрь 06, 2019, 11:56:01 am
Программный контроль исключается - 100%. Поэтому проверку в расчетах добавлять нельзя. То, что этот факт контролируется пользователем - вряд-ли, т.к. другие аналогичные ситуации в условиях задач не встречаются. Тут заковырка именно в конструкции метаданных... GROOVY бы сюда.
ОК, для чего тогда вообще эта фраза в условии ?
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Alexey_89 от Сентябрь 06, 2019, 01:14:19 pm
Читая задачи из сборника, я понял систему. Составлялись задачи так - собиралась простенькая учетная система, затем по ней составлялось ТЗ (условие задачи). А чтобы не было альтернативных способов решения по условию, в условие добавлялись эти самые отпорки. Поэтому даже для себя, решая задачи, я вывел правило - если решение получается сложное, кривое, или просто в нем много кода - оно неверное. Нужно искать простое, верное решение задачи - конфигурацию, которая было составлена авторами сборника. А это самое предложение в условии, которое мы обсуждаем - та самая отпорка. Она имеет под собой основание.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: DanJer74 от Сентябрь 06, 2019, 02:16:37 pm
Программный контроль исключается - 100%. Поэтому проверку в расчетах добавлять нельзя. То, что этот факт контролируется пользователем - вряд-ли, т.к. другие аналогичные ситуации в условиях задач не встречаются. Тут заковырка именно в конструкции метаданных... GROOVY бы сюда.
ОК, для чего тогда вообще эта фраза в условии ?
Контроль со стороны платформы не требуется. И все. Можно ее мимо пропустить, я думаю так. Здесь ключевой момент - проверку добавлять не надо. Значит пользователь должен все это нормально вводить.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: letyurij от Сентябрь 06, 2019, 04:02:18 pm
1) Программно контролировать не надо (по условию)
2) Механизмов платформы для такого контроля — НЕТ.
3) Значит контролирует ПОЛЬЗОВАТЕЛЬ.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: DanJer74 от Сентябрь 06, 2019, 08:51:49 pm
1) Программно контролировать не надо (по условию)
2) Механизмов платформы для такого контроля — НЕТ.
3) Значит контролирует ПОЛЬЗОВАТЕЛЬ.
Вот еще точнее пояснил. :)
Название: Re: Билет 12. Спец по платформе V8
Отправлено: Alexey_89 от Октябрь 01, 2019, 09:59:27 am
До чего же е_нутая задача СПР в 12 билете. Прорешал на чистовую, на задачу ушло 1ч. 34м. Выполнены все условия задачи кроме "Компенсация начисляется только в случае отсутствия невыходов". У документа "Начисление зарплаты" в движениях аж 5 регистров. В задаче используются все три вида расчета. Штраф зависит от ОН "Невыход", который вытесняет оклад по периоду действия. Период действия штрафа выставляется пользователем, он может отличатся от периода невыхода, ибо "если сотрудник не вышел на работу по неуважительной причине". Процент компенсации вводится в шапке документа, пишется в регистр, но при расчете все равно используется реквизит шапки - т.е. регистр не нужен, но ведь"в информационной базе необходимо хранить историю изменения данного процента". Не нужнее в этой задаче разве что только справочник "Автомобили", который я сделал подчиненным справочнику "Физические лица", т.к. "Сотрудники работают на собственных автомобилях, поэтому обмен автомобилями между водителями не возможен". Не дай Бог вам попадется эта задача на экзамене.
Название: Re: Билет 12. Спец по платформе V8
Отправлено: letyurij от Октябрь 01, 2019, 04:29:02 pm
Штраф = невыход
Подчинение автомобилей сотрудника не нужно. Автомобиль — реквизит регистра, т.о. выполняется условие, что совместительство (обмен автомобилями) невозможны.