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

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

Jones

  • Проверенный
  • ***
  • Сообщений: 199
Билет 5. Спец по платформе V8
« : Август 07, 2015, 11:13:17 am »
Друзья! В условии расчетной задачи пятого билета есть формулировка, которая в задачнике не встречается (по крайней мере я такого не нашел).

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

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

Jones

  • Проверенный
  • ***
  • Сообщений: 199
Re: Билет 5. Спец по платформе V8
« Ответ #1 : Август 07, 2015, 11:14:49 am »
Сдается мне, что надо в рег.свед Графики сделать кроме Графика, Подразделения еще и измерение Сотрудник.
А в РР измерение Сотрудник связать с графиком.


Uncle

  • Пользователь
  • **
  • Сообщений: 49
  • ФИО: Max
Re: Билет 5. Спец по платформе V8
« Ответ #2 : Август 10, 2015, 11:38:51 am »
Мне кажется что строчки условия друг-другу не противоречат. Я решал так - в РС СведенияОСотрудниках в ресурс добавил График (измерения Сотрудник, Подразделение) и подцеплял его при проведении документа.

Uncle

  • Пользователь
  • **
  • Сообщений: 49
  • ФИО: Max
Re: Билет 5. Спец по платформе V8
« Ответ #3 : Август 10, 2015, 11:48:24 am »
1)
ведь по факту сотрудник не может работать без указания подразделения
тогда и в РС создаем Васана Бахгалтерия ПятидневкаВасиной
в РР добавлил реквизит график - связь с графиком (пятидневкаВасиной)
2)
но посмотрев др. решения делают РС: Дата, Сотрудник, Подразделение и в РР связывание идет только по измерениям, нет никаких доп реквизитов.

Хотелось бы знать какой вариант правильный, если оба имеют право на существование, то 1 несколько проще.

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #4 : Август 10, 2015, 01:21:35 pm »
Каждый сотрудник компании работает по своему собственному графику. При одновременной работе в разных подразделениях у каждого сотрудника в конкретном подразделении может быть собственный график.
Я думаю, всё должно быть просто - есть справочник Графики, и из этого графика в документе "Начисление зарплаты" выбирается любой, вне зависимости от графиков, выбранных для других сотрудников этого же подразделения, и независимо от графика этого же сотрудника, указанного при начислении в другом подразделении. В общем, самый простой вариант.
Зато задумался о ситуации, когда, например, графики по подразделениям, я в таких случаях всё равно график указывал в "Начисление з/п", а наверное надо указывать подразделение с последующим подтягиванием графика при проведении документа.

Uncle

  • Пользователь
  • **
  • Сообщений: 49
  • ФИО: Max
Re: Билет 5. Спец по платформе V8
« Ответ #5 : Август 10, 2015, 01:51:24 pm »
В задании это никак не оговорено :)
итого 2 варианта я озвучил + Ваш
Каждый сотрудник компании работает по своему собственному графику. При одновременной работе в разных подразделениях у каждого сотрудника в конкретном подразделении может быть собственный график.
в документе "Начисление зарплаты" выбирается любой, вне зависимости от графиков,.... В общем, самый простой вариант.

Jones

  • Проверенный
  • ***
  • Сообщений: 199
Re: Билет 5. Спец по платформе V8
« Ответ #6 : Август 10, 2015, 03:58:36 pm »
Сделал 5 билет. Прошу оценить и ткнуть на существенные недостатки.

Сразу задам пару вопросов уважаемым коллегам по цеху:

1)   Как вам моя процедура ПриЗаписи() в модуле Операции?
На мой взгляд это простая и понятная, а главное верная последовательность:
1-в движениях устанавливаем Период из Даты документа
2-если док записан, то у помеченного документа отключаем активность

2)   Прошу оценить мою блокировку в ОперУчете док РН
В своем решении я блокирую регистр Дебеторка по Проекту документа и пустому проекту.
Для этого поместил эти два проекта в ТЗ и подсовываю ее как источник данных.
Проверил на серверной базе, оба проекта блокируются, то есть пока идет транзакция, прочитать данные по ним невозможно,
однако, у меня такое чувство, будто это как-то громоздко. Может есть более изящное решение?

      Блок = Новый БлокировкаДанных;
      Эл = Блок.Добавить("РегистрНакопления.Дебеторка");
      Эл.УстановитьЗначение("Контрагент", Контрагент);
      
      ТЗ = Новый ТаблицаЗначений;
      ТЗ.Колонки.Добавить("Проект");
      НоваяСтрока = ТЗ.Добавить();
      НоваяСтрока.Проект = Проект;
      НоваяСтрока = ТЗ.Добавить();
      НоваяСтрока.Проект = Справочники.Проекты.ПустаяСсылка();
      
      Эл.ИсточникДанных = ТЗ;
      Эл.ИспользоватьИзИсточникаДанных("Проект", "Проект");
      Блок.Заблокировать();

3)   Вопрос по Бизнес-процессам:
Точка маршрута «ПолучениеОплаты» имеет адресацию «Любой бухгалтер». В точке я установил адресацию только по Должность=Бухгалтер. При этом, в РегистреАдресации было заполнено, как указано в задании: Кротов – Бухгалтер – Бухгалтерия.
При таких настройках у пользователя Кротов задача в списке не появилась.
Чтобы увидеть задачу в списке задач пользователя, я создал еще одну запись в РегистреАдресации: Кротов – Бухгалтер - ____, то есть с пустым подразделением.

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

Тогда, если в адресации точки маршрута сказано «любой бухгалтер», то для каждой записи «Бухгалетр» с указанным подразделением, надо создать еще одну запись с пустым подразделением. А по адресации «Любой сотрудник бухгалтерии» надо создать запись с пустой должностью для каждой записи в которой указано Подразделение «Бухгалтерия».

Соответственно, если в адресации точки будет указано просто  «Бельдыев», то надо создать еще и запись «Бельдыев»-___-___, то есть с пустыми должностью и подразделением.

4)   Для обновления схемы Бизнес-процесса, на сколько я понимаю, надо после ПолучитьКартуМаршрута() прямо НаСервере переключить видимость сетки, а затем еще раз переключить видимость сетки, но уже НаКлиенте.

5)   Для расчета Премии использовал продажи по Подразделению, которые оборотами накапливал в БУ на счете Прибыли (оборотное субконто2 Подразделение).
Вроде все красиво, как Вы считаете?

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #7 : Август 10, 2015, 04:39:33 pm »
В задании это никак не оговорено :)
Из обсуждений и рассказов сдавших я сделал вывод, что если не оговорено, надо выбирать наиболее простой и быстро-исполняемый для себя вариант. Но если терзают сомнения, спросить у экзаменатора (при удаленке написать в пояснительной, почему выбран такой вариант), но ни в коем случае без согласования (или уверенности в необходимости) не брать себе доп задание, которое, вполне вероятно, не предусмотрено заданием.

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #8 : Август 10, 2015, 05:06:00 pm »
Сразу задам пару вопросов
Точка маршрута «ПолучениеОплаты» имеет адресацию «Любой бухгалтер». В точке я установил адресацию только по Должность=Бухгалтер
Надо еще галочку у "Групповая" поставить (чуть выше).
правильно ли я понимаю, что кроме записей, указанных в задании надо создать еще и все записи, необходимые для того, чтобы задачи отображались у пользователей так, как это указано на схеме маршрута?
Я создаю только записи, соответствующие схеме. Т.е., если "любой бухгалтер", то создаю записи только с должностями Бухгалтер без указания подразделения.
если в адресации точки будет указано просто  «Бельдыев», то надо создать еще и запись «Бельдыев»-___-___, то есть с пустыми должностью и подразделением.
Для корректной работы именно эта запись необходима и достаточна.
Для расчета Премии использовал продажи по Подразделению, которые оборотами накапливал в БУ на счете Прибыли (оборотное субконто2 Подразделение)
В рамках данной задачи должно быть верно (я в таких ситуациях создавал новый РН). Но ради абсолютной корректности, думаю, предпочтительней было бы взять таблицу ОборотыДтКт, а то хз что некоторые бухгалтера умудряются ввести.  :D

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #9 : Август 10, 2015, 05:16:30 pm »
Вроде все красиво, как Вы считаете?
"В задачах получения данных из информационной базы установка отборов по неиндексированным полям (-0,5 балла)".
Вот это бы только подправить.  ;)

ПС. Я смотрю, еще оперативное проведение используется (слышал, не обязательно). ИМХО, в ОУ остатки будут считываться некорректно (при оперативном надо удалять возможно имеющиеся старые записи этого документа перед считыванием).
« Последнее редактирование: Август 10, 2015, 05:24:12 pm от alex1248 »

Jones

  • Проверенный
  • ***
  • Сообщений: 199
Re: Билет 5. Спец по платформе V8
« Ответ #10 : Август 11, 2015, 10:23:41 pm »
Надо еще галочку у "Групповая" поставить (чуть выше).
alex1248, на сколько мне известно, "Групповая" надо включать если надо сформировать задачу каждому бухгалтеру (сколько бухгалтеров, столько задач). А здесь задача должна быть одна, но выполнить ее (и видеть) может любой бухгалтер.

Я создаю только записи, соответствующие схеме. Т.е., если "любой бухгалтер", то создаю записи только с должностями Бухгалтер без указания подразделения.
Получается, не нужно сосздавать адресацию, указанную в списке в задании?

"В задачах получения данных из информационной базы установка отборов по неиндексированным полям (-0,5 балла)".
Вот это бы только подправить.  ;)
alex1248, можно поподробнее? Что за неиндексированные поля и где именно у меня по ним отбор?

...оперативное проведение используется (слышал, не обязательно)...
Не уловил... Да режим проведения  может быть как Оперативным (тогда остатки на МоментВремени), так и Неоперативным (тогда остатки на Неопределено). Вроде с этим ни у кого на экзамене проблем нет ))

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #11 : Август 12, 2015, 12:03:15 am »
alex1248, на сколько мне известно, "Групповая" надо включать если надо сформировать задачу каждому бухгалтеру (сколько бухгалтеров, столько задач). А здесь задача должна быть одна, но выполнить ее (и видеть) может любой бухгалтер.
Сорри, неправильно понял.  :)
Получается, не нужно сосздавать адресацию, указанную в списке в задании?
Надо, чтобы работало, для этого надо выбрать информацию в соответствии с заданием. Конечно же, они не выложили ее в готовом к употреблению виде.  :)
Где-то в разъяснениях написано, что может быть лишняя инфа.
alex1248, можно поподробнее? Что за неиндексированные поля и где именно у меня по ним отбор?
Надо устанавливать свойство "Индексировать" у измерений регистров, по которым отбор (автоматом у них у всех стоит "Не индексировать". Я тоже сильно не разбираюсь в деталях, но хотя бы в РН лучше у всех измерений ставить "Индексировать" (не знаю, как в случае измерений примитивного типа, не нравятся они мне, надо будет избавляться от них). По ним практически всегда есть запросы. Ну и другие регистры, наверное, чаще попадают в ту же категорию.
Не уловил... Да режим проведения  может быть как Оперативным (тогда остатки на МоментВремени), так и Неоперативным (тогда остатки на Неопределено). Вроде с этим ни у кого на экзамене проблем нет ))
При оперативном перепроведении ранее оперативно проведенного документа на МоментВремени() по этому документу в базе уже есть записи, при запросе остатки будут получены с их учетом.
Проблемы бывают, но возможно многие ставят запрет оперативного проведения (вот это советуют делать, чтобы не заморачиваться с оперативным), ну или не слишком внимательно проверяют этот пунктик.

Jones

  • Проверенный
  • ***
  • Сообщений: 199
Re: Билет 5. Спец по платформе V8
« Ответ #12 : Август 12, 2015, 04:37:32 pm »
При оперативном перепроведении ранее оперативно проведенного документа на МоментВремени() по этому документу в базе уже есть записи, при запросе остатки будут получены с их учетом.
Проблемы бывают, но возможно многие ставят запрет оперативного проведения (вот это советуют делать, чтобы не заморачиваться с оперативным), ну или не слишком внимательно проверяют этот пунктик.
Если я ничего не путаю, то в рамках транзакции проведения достаточно в начале сделать Движения.Основной.Очистить() и Движения.Основной.Записать() и старые движения исчезнут, будто их и не было (на время транзакции).
Пусть эксперты меня поправят, если я не прав.

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #13 : Август 12, 2015, 06:34:09 pm »
Пусть эксперты меня поправят, если я не прав.
Я не эксперт, но перед записью надо заблокировать (БлокироватьДляИзменения).   :)
Источник http://1c.chistov.pro/2013/07/blog-post_25.html

Евгений

  • Пользователь
  • **
  • Сообщений: 22
Re: Билет 5. Спец по платформе V8
« Ответ #14 : Август 12, 2015, 11:20:51 pm »
Jones, а я опять вернусь к злочастному условию в СПР "данные за разные расчетные периоды". С окладом все понятно, можно задавать разные "ПериодДействияНачало" и "ПериодДействияКонец". А что делать с надбавкой? Только на один период получается? Он же у Вас привязан только к "Дате" документа.