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

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

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #30 : Октябрь 09, 2015, 09:16:59 am »
Что не так в отчёте???
А где он?  :)

Ну всё, пересидел за задачами))))  Прикрепил!
В обработке проведения РН в проводке ПрибылиИУбытки - Товары не указаны субконто.
Дабы не искать ошибки там, где их нет, можно всегда у всех документов сразу выводить на форму движения по всем регистрам и при проведении проверять, всё ли там нормально. Дополнительные временные затраты не велики, зато наверняка съэкономится время при отладке + есть шанс, что сразу будет выполнен хоть малюсенький кусочек задания по УФ.  :)

zorky

  • Проверенный
  • ***
  • Сообщений: 222
  • ФИО: ЗЖВ
Re: Билет 5. Спец по платформе V8
« Ответ #31 : Октябрь 09, 2015, 06:05:16 pm »
Что не так в отчёте???
А где он?  :)

Ну всё, пересидел за задачами))))  Прикрепил!
В обработке проведения РН в проводке ПрибылиИУбытки - Товары не указаны субконто.
Дабы не искать ошибки там, где их нет, можно всегда у всех документов сразу выводить на форму движения по всем регистрам и при проведении проверять, всё ли там нормально. Дополнительные временные затраты не велики, зато наверняка съэкономится время при отладке + есть шанс, что сразу будет выполнен хоть малюсенький кусочек задания по УФ.  :)

Спасибо огромное!

Всё переделал, решил проблему с копейками, для этого пришлось делать Итоги и 2 цикла!  Не знаю как по другому решить!   - И самое печальное - смотрю в регистр, - движения ПРАВИЛЬНЫЕ, себестоимость ставит и сумму продажи, НО В ОТЧЁТЕ УПОРНО СТАВИТ непонятную сумму для одной позиции в себестоимость!!!(((  В регистре все верно, в ноль выходит, а отчёте показывает в одной позиции непонятную сумму( 


Jones

  • Проверенный
  • ***
  • Сообщений: 199
Re: Билет 5. Спец по платформе V8
« Ответ #32 : Октябрь 11, 2015, 03:07:32 am »
Выкладываю повторно проработанную версию БУ+ПР пятого билета.

1)   Задача по БУ очень интересная т.к. содержит проблему копеек в самом серьезном виде: количество на счТовары хранится в разрезе Товаров и ИнвНомеров, а Себестоимость – только в разрезе Номенклатуры.
Списывая Номенклатуру приходится Сумму получать, используя среднюю цену себестоимости Товара, в результате чего, часть Себестоимости может остаться несписанной.
Делаю так: внутри группировки Номенклатура, в обходе выборки ИнвНомера накапливаю Списанную Стоимость номенклатуры и если списано все Количество Номенклатуры,  но СписаннаяСтоимость меньше остатка Себестоимости (который должен быть списан), то оставшиеся копейки просто добавляю к Сумме последней проводки.

2)   Задачу по ПР прорешал с учетом волшебной фразы «В одном документе могут быть данные за разные расчетные периоды».
В этой задаче к Окладам данная формулировка не относится, т.к. Оклад здесь получается из Шкалы в зависимости от ФактическиОтработанныхЧасов, т.е. ПериодРегистрации на размер Оклада никак не влияет.

Другое дело Премия от продаж Подразделения за предыдущий месяц. Оказывается, предыдущий месяц надо отсчитывать не от Даты документа (что существенно упрощает задачу), а от ПериодаРегистрации записи (который надо указывать для каждой строки ТЧ ДН).

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

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

3)   Возвращаясь к модулю документа Операция:
Снова изучил Пункт 11 и снова не понял, зачем так сложно.

Представляю вашему вниманию очередной вариант, на этот раз он состоит всего из 8 строк.
Протестил, все работает, прошу оценить.

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)

Если ПометкаУдаления <> Ссылка.ПометкаУдаления Тогда
Движения.Основной.Прочитать();
Движения.Основной.УстановитьАктивность(Не ПометкаУдаления);
Движения.Основной.Записывать = Истина;
КонецЕсли;

Для Каждого Движение ИЗ Движения.Основной Цикл
Движение.Период = Дата;
КонецЦикла;

КонецПроцедуры

PS 15ч37м
Исправил списание себестоимости в РН (БУ), там была ошибка и Копейки списывались хотя Количество списано не полностью.
Разные расчетные периоды в ПР оказывается не так уж и страшны. Надо набить руку и на экзамене сразу делать как положено.
« Последнее редактирование: Октябрь 11, 2015, 03:37:26 pm от Jones »

zorky

  • Проверенный
  • ***
  • Сообщений: 222
  • ФИО: ЗЖВ
Re: Билет 5. Спец по платформе V8
« Ответ #33 : Октябрь 11, 2015, 09:41:44 am »
Выкладываю повторно проработанную версию БУ+ПР пятого билета.

1)   Задача по БУ очень интересная т.к. содержит проблему копеек в самом серьезном виде: количество на счТовары хранится в разрезе Товаров и ИнвНомеров, а Себестоимость – только в разрезе Номенклатуры.
Списывая Номенклатуру приходится Сумму получать, используя среднюю цену себестоимости Товара, в результате чего, часть Себестоимости может остаться несписанной.
Делаю так: внутри группировки Номенклатура, в обходе выборки ИнвНомера накапливаю Списанную Стоимость номенклатуры и если списано все Количество Номенклатуры,  но СписаннаяСтоимость меньше остатка Себестоимости (который должен быть списан), то оставшиеся копейки просто добавляю к Сумме последней проводки.

Да, приходится делать цикл в цикле. По моему можно сделать и с одним, если ставить условие что позиция номенклатуры - изменилась, т.е. перешли на след. номенклатуру.  Посмотрите моё решение, я коплю кол-во списываемого, и когда оно становится равно кол-во в регистре - забираю СуммуОстаток, которая также вычитается из ОбщейСуммы на каждой итерации.  Можно так сделать? вроде тестировал на суммах:   100.10,    200.11  - нормально.   с Отчётом вот что-то не так(( ума не приложу.

artemusII

  • Пользователь
  • **
  • Сообщений: 34
  • ФИО: Артем А.
Re: Билет 5. Спец по платформе V8
« Ответ #34 : Октябрь 11, 2015, 12:55:13 pm »
А разве на экзамене обращают внимания на действия документа Операция. Я всегда считал, что просто вывести на форму таблицу движений как есть и все.

artemusII

  • Пользователь
  • **
  • Сообщений: 34
  • ФИО: Артем А.
Re: Билет 5. Спец по платформе V8
« Ответ #35 : Октябрь 11, 2015, 01:05:42 pm »
Выкладываю повторно проработанную версию БУ+ПР пятого билета.
...
2)   Задачу по ПР прорешал с учетом волшебной фразы «В одном документе могут быть данные за разные расчетные периоды».
...

Другое дело Премия от продаж Подразделения за предыдущий месяц. Оказывается, предыдущий месяц надо отсчитывать не от Даты документа (что существенно упрощает задачу), а от ПериодаРегистрации записи (который надо указывать для каждой строки ТЧ ДН).
...


Считаю, что ваше понимание неверно. Ведь в конце задачи есть фраза "Считать, что все данные вводятся только в пределах одного месяца". Это значит, что период регистрации у документа всегда один месяц. А вот "расчетные периоды" могут быть разными ( с 1го по 10, с 5го по 20, с 1го по 30е и т.д.) НО! строго в рамках одного месяца. Поэтому фразу "... общая сумма продаж товаров за предыдущий месяц... " нужно понимать именно как сумма продаж за прошлый месяц по отношению к текущему периоду регистрации.

Ну это мне так кажется)

artemusII

  • Пользователь
  • **
  • Сообщений: 34
  • ФИО: Артем А.
Re: Билет 5. Спец по платформе V8
« Ответ #36 : Октябрь 11, 2015, 01:39:26 pm »
Выкладываю повторно проработанную версию БУ+ПР пятого билета.

1)   Задача по БУ очень интересная т.к. содержит проблему копеек в самом серьезном виде: количество на счТовары хранится в разрезе Товаров и ИнвНомеров, а Себестоимость – только в разрезе Номенклатуры.


Спасибо за информацию - даже не задумывался... сейчас поправил...

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #37 : Октябрь 11, 2015, 03:37:27 pm »
...Это значит, что период регистрации у документа всегда один месяц. А вот "расчетные периоды" могут быть разными ( с 1го по 10, с 5го по 20, с 1го по 30е и т.д.) НО! строго в рамках одного месяца...
А как вы в таком случае трактуете также довольно часто встречающуюся формулировку "В одном документе могут быть данные только за текущий расчетный период"? Что за "текущий расчетный период" имеется ввиду?  :)
« Последнее редактирование: Октябрь 11, 2015, 03:44:34 pm от alex1248 »

artemusII

  • Пользователь
  • **
  • Сообщений: 34
  • ФИО: Артем А.
Re: Билет 5. Спец по платформе V8
« Ответ #38 : Октябрь 11, 2015, 04:34:50 pm »
Да, тоже логично...

Я покопался щас по форуму - есть такой рассказ:

"Всем добрый день!
 Сдавал 07.10 2-й билет, сдал на 4 с первого раза)))
 Сдавал на 8.2
 Принимал Гончаров Дмитрий.
 В СПР есть фраза «В одном документе могут быть данные за разные расчетные
 периоды». Спросил, означает ли это, что период регистрации должен быть в
 табличной части? Ответ был, нет, это значит, что в строке табличной части период
 действия может быть не за весь месяц, а к примеру с 01.10 по 15.10. "

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #39 : Октябрь 11, 2015, 06:01:03 pm »
Да, тоже логично...

Я покопался щас по форуму - есть такой рассказ:

"Всем добрый день!
 Сдавал 07.10 2-й билет, сдал на 4 с первого раза)))
 Сдавал на 8.2
 Принимал Гончаров Дмитрий.
 В СПР есть фраза «В одном документе могут быть данные за разные расчетные
 периоды». Спросил, означает ли это, что период регистрации должен быть в
 табличной части? Ответ был, нет, это значит, что в строке табличной части период
 действия может быть не за весь месяц, а к примеру с 01.10 по 15.10. "
Да, я это тоже читал.
Но это лишь единичный случай, к тому же было довольно давно.
В общем, не стоит на это ориентироваться.
К тому же, то, что разные расчетные периоды - совсем не значит, что период регистрации в ТЧ. Я никогда не выносил период регистрации в ТЧ, на мой взгляд, это вообще не соответствует распространенным нормам учета. Поэтому, для меня разные расчетные периоды - это периоды действия в разных месяцах, но, с учетом фразы "Считать, что все данные вводятся только в пределах одного месяца", в одной строке следует вводить данные внутри одного расчетного периода (т.е. месяца). Кстати, есть задача (больничный в билете 9), где в строке может быть указан период, пересекающийся с разными расчетными периодами (обратите внимание, тут никак уже не привяжешь к периоду регистрации, и уже логично оперируем с периодом действия), которые приходится разбивать на периоды в пределах одного месяца каждый.
Впрочем, судя по отзывам, период регистрации в ТЧ на экзамене принимается, так что этот вопрос на усмотрение каждого.  :)
« Последнее редактирование: Октябрь 11, 2015, 06:07:02 pm от alex1248 »

zorky

  • Проверенный
  • ***
  • Сообщений: 222
  • ФИО: ЗЖВ
Re: Билет 5. Спец по платформе V8
« Ответ #40 : Октябрь 11, 2015, 06:08:41 pm »
Выкладываю повторно проработанную версию БУ+ПР пятого билета.

1)   Задача по БУ очень интересная т.к. содержит проблему копеек в самом серьезном виде: количество на счТовары хранится в разрезе Товаров и ИнвНомеров, а Себестоимость – только в разрезе Номенклатуры.


Спасибо за информацию - даже не задумывался... сейчас поправил...

Посмотрел решение, всё правильно копейки списывает)) Единственное вот это не нужно:
ЭлементБлокировки.ИспользоватьИзИсточникаДанных(ПланыВидовХарактеристик.ВидыСубконто.Измерение1, "Измерение1");
т.к. надо блокировать конкретную номенклатуру, со всеми инв.номерами,  - не дай бог спишут в процессе...


artemusII

  • Пользователь
  • **
  • Сообщений: 34
  • ФИО: Артем А.
Re: Билет 5. Спец по платформе V8
« Ответ #41 : Октябрь 17, 2015, 01:25:24 pm »
... Единственное вот это не нужно:
ЭлементБлокировки.ИспользоватьИзИсточникаДанных(ПланыВидовХарактеристик.ВидыСубконто.Измерение1, "Измерение1");
т.к. надо блокировать конкретную номенклатуру, со всеми инв.номерами,  - не дай бог спишут в процессе...

Снова спасибо!) Это я тоже не углядел)

HRom

  • Пользователь
  • **
  • Сообщений: 94
  • ФИО: HRom
Re: Билет 5. Спец по платформе V8
« Ответ #42 : Октябрь 17, 2015, 02:14:26 pm »
В оперативном учете, в Отчете ни у кого не увидел чтобы колонка аванс вставала после проектов. Jones сделал реквизит "ПорядокПроектов", но никак не использовал. Я ввёл в его решении аванс по новому контрагенту, в отчете аванс встал впереди проектов.

Как считаете, будет ли ошибкой при решении оперативного учета использовать два регистра, один для долгов по проекту, другой для авансов?

И здесь
http://forum.chistov.pro/index.php?topic=1205.30

рекомендуют в движениях расходной накладной указывать всю сумму на проект, а не (Сумма документа - Аванс).

У вас расходная накладная закрывает аванс , если он есть, а остаток денег "пишет" на проект.
 Таким образом реальную "стоимость" проекта вы не видите, хотя обороты идут.
 У вас:
 Расх накл №4 - Сумма по документу - 3200.
 Движения -2500 аванс, +700 проект;

 Должно быть: -2500 аванс, 3200 проект, -2500 проект.
 Кто-то здесь уже писал, что на экзамене досталось подобное , и пришлось лихорадочно дописывать решение.

HRom

  • Пользователь
  • **
  • Сообщений: 94
  • ФИО: HRom
Re: Билет 5. Спец по платформе V8
« Ответ #43 : Октябрь 17, 2015, 02:33:44 pm »
artemusII,
как вы сделали в отчете чтобы не видно было заголовков "сумма" в названии колонок?

alex1248

  • Призрак форума
  • *****
  • Сообщений: 714
Re: Билет 5. Спец по платформе V8
« Ответ #44 : Октябрь 17, 2015, 04:18:03 pm »
В оперативном учете, в Отчете ни у кого не увидел чтобы колонка аванс вставала после проектов.
Прикрепил файл.  :)
рекомендуют в движениях расходной накладной указывать всю сумму на проект, а не (Сумма документа - Аванс).
Правильно именно так и должно быть. Я тоже писал об этом, возможно, в этой ветке.
« Последнее редактирование: Октябрь 17, 2015, 04:20:50 pm от alex1248 »