Автор Тема: Зачача 2.21  (Прочитано 13400 раз)

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

artfa

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Артур
Зачача 2.21
« Ответ #30 : Август 14, 2013, 11:25:39 pm »
сделал ч\з реквизит Расходной - Курс, но че-то мне не нравится, так как происходит повторная запись (задается актуальный Курс) при проведении Расходной и УстановкаКурсов,
 можно было сделать ч\з второе субконто - Курс, но остановил то что примитивный тип.

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

artfa

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Артур
Зачача 2.21
« Ответ #31 : Август 14, 2013, 11:26:33 pm »
сделал ч\з реквизит Расходной - Курс, но че-то мне не нравится, так как происходит повторная запись (задается актуальный Курс) при проведении Расходной и УстановкаКурсов,
 можно было сделать ч\з второе субконто - Курс, но остановил то что примитивный тип.

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


axlch

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Алексей
Зачача 2.21
« Ответ #32 : Сентябрь 24, 2013, 10:21:56 pm »
"Решение должно предусматривать возможность корректного перепроведения документа
 «Расходная накладная» от начала месяца, после того как в середине
 месяца был введен документ «Установка курсов»." - При помощи обработки - запросом выбираются доки за месяц (первым идет Док с Курсом потом все расходные) и проводятся.
Вложения:
221.dt

artfa

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Артур
Зачача 2.21
« Ответ #33 : Сентябрь 25, 2013, 12:57:14 am »
оптимизировал блокировки в Установке курсов, и немного подправил запрос, в остальной части оставил как есть
Вложения:
9006778.dt

Alexander

  • Пользователь
  • **
  • Сообщений: 33
  • ФИО: Kulikov Alexander
Зачача 2.21
« Ответ #34 : Ноябрь 23, 2013, 12:24:38 pm »
Ввел два РС
 1- для того что бы установка курса была не чаще 1 раза в месяц. Регистратор - "Установка курсов". В принципе там неважно что есть. Главное периодичность - Месяц
 2. Курс для каждого контрагента. Периодический. По позиции регистратора ("Установка курсов")
 ----
 при проведении документа Установка курсов считаю разницу по новому курсу для ВСЕХ дебетовых и кредитовых оборотов по "Сумма в УЕ" от начала месяца по момент проведения документов. На мой взгляд все условия задачи выполняются.

artfa

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Артур
Зачача 2.21
« Ответ #35 : Ноябрь 23, 2013, 03:43:41 pm »
Цитата Alexander ()
Главное периодичность - Месяц
неправильно, по условиям задачи курс может устанавливаться в любой день месяца, а если периодичность месяц, то будет устанавливаться на начало месяца

Alexander

  • Пользователь
  • **
  • Сообщений: 33
  • ФИО: Kulikov Alexander
Зачача 2.21
« Ответ #36 : Декабрь 04, 2013, 08:45:09 pm »
А никто и не спорит. этим отслеживается ТОЛЬКО то что документ будет один в месяце. А собственно курс, как я уже сказал, по позиции регистратора.

 Выкладываю решение. Дико извиняюсь, что кроме задачи 2.21 ещё присовокуплины 1.26 и 3.26. Собственно поэтому и не выкладывал
Вложения:
Kul_2_21.dt
« Последнее редактирование: Декабрь 04, 2013, 08:48:25 pm от Kulikov Alexander »

IT_PROGRAMMIST

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Дмитрий
Зачача 2.21
« Ответ #37 : Январь 16, 2014, 11:54:28 am »
Alexander. Посмотрел ваше решение.
 1) Зачем вы ввели  признак учета субконто суммовой? По сути в этой задаче он нам не нужен.
 2) В запросе док Установка курсов.
 а)НЕ указаны параметры виртуальной таблицы для курса.
 б) текущий курс можно просто взять из тч документа Установка курсов(для этого не нужно брать срез)
 в остальном нормально все.

 мое решение. Буду благодарен за критику.
Вложения:
21_ITPROG.dt
« Последнее редактирование: Январь 16, 2014, 12:18:04 pm от Дмитрий »

oracle77

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Вася
Зачача 2.21
« Ответ #38 : Февраль 18, 2014, 07:55:05 pm »
мое решение. Буду благодарен за критику.
 Прикрепления: 21_ITPROG.dt(152Kb)

 А чего тут собственно критиковать ,начнем с того .что в вашем решении док установка курсов никак не меняет курс в расходной(докум продажи)

 я думаю достаточно

IT_PROGRAMMIST

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Дмитрий
Зачача 2.21
« Ответ #39 : Февраль 18, 2014, 09:41:15 pm »
oracle77,
 
Цитата
А чего тут собственно критиковать ,начнем с того .что в вашем решении док установка курсов никак не меняет курс в расходной(докум продажи)

 я думаю достаточно
Не очень понятно ваше замечание. А он и не должен менять курс в документе Расходная накладная.
 Документ "Установка курсов " устанавливает новый курс. И в случае, если есть документы реализации(в месяце изменения курса), то будет сделано корректирующее движение.
 А каком изменении курса в расходной накладной идет речь??????
« Последнее редактирование: Февраль 18, 2014, 09:41:47 pm от Дмитрий »

MorningStalker

  • Пользователь
  • **
  • Сообщений: 10
  • ФИО: Дмитрий Корчагин
Зачача 2.21
« Ответ #40 : Март 09, 2014, 01:10:53 pm »
Цитата IT_PROGRAMMIST ()
мое решение. Буду благодарен за критику.

 1. В запросах Вы нигде не обращаетесь к таблице остатков по Счету "Покупатели", поэтому на этом счете для Субконто1 нужно поставить галочку "только обороты". За эту ошибку на экзамене непременно скосят.

 2. В модуле обработки проведения документа УстановкаКурса Вы два раза в разных циклах обрабатываете одни и те же данные. производительнее будет обработать в 1м цикле. 

 3. В 1м пакете запроса обработки проведения документа УстановкаКурса Вы дергаете 2 поля и по этим же 2м полям проводите группировку. Зачем? если это защита от дважды введенных данных по одному контрагенту, то группируйте только по контрагенту, а курс берите МАКСИМУМ.

 4. Честно говоря не совсем понимаю зачем блокируется РегистрБухгалтерии. Момент очень спорный: при проведении Р/н обращения к регистру не происходит. Получается, блокировка РегистраБухгалтерии нужна только для того, чтобы было невозможно одновременно провести БОЛЕЕ одного документа УстановкаКурса. А по условию задачи этот докумерт проводится 1 раз в месяц. Вот РегистрСведений на мой взгляд блокировать нужнее, чтобы не позволить вводить новый р/н по старому, в данный момент некорректному курсу.

 5. Вообще у Вас с блокировками напутанно. БлокироватьДляИзменения = Истина применяется при новой методике и буквально делает следующее: как только вы записали данные в регистр, система сама блокирует регистр по вашим записям. А у Вас сначала записывается пустой набор, потом блокируется по пустому набору, потом сверху накладывается еще одна блокировка. И смысл всей этой конструкции не особо понятен.

 6. Ну и заморочки с лишним реквизитом "Курс" в р/н мне тоже не совсем очевидны. Проще выдергивать данные из РегистраСведений последние на дату проведения документа, при условии, что ДАТА РЕГИСТРАТОРА этих данных <= Дате проводимой р/н.
Вложения:
_2-21.dt

maksonman

  • Новичок
  • *
  • Сообщений: 1
  • ФИО: Галимов Максим Николаевич
Зачача 2.21
« Ответ #41 : Май 22, 2014, 12:22:38 pm »
посмотрите решение
Вложения:
3062507.dt
« Последнее редактирование: Май 22, 2014, 12:22:59 pm от Галимов Максим Николаевич »

Eufes

  • Пользователь
  • **
  • Сообщений: 33
  • ФИО: Eufes
Зачача 2.21
« Ответ #42 : Октябрь 26, 2014, 12:26:44 pm »
Выкладываю свое решение. Оно схоже с решением MorningStalker
 На мой взгляд правильное.
 Но я добавил контроль ввода документа Установка курса (единственный в месяце). Несмотря на периодичность "месяц" регистра сведений "Курсы" могут быть введены два документа по разным контрагентам.

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

 https://yadi.sk/d/M-08KmFOcHv8k

Добавлено (26.10.2014, 12:26)
---------------------------------------------
maksonman
 В решении есть замечания. По проведению документа "Установка курса". В целом сложность всей задачи именно в нем.
 Чтобы много не писать здесь, посмотри решение MorningStalker или мое (у меня с комментариями) сразу будут видны ошибки.
 MorningStalker в своем последнем посте вообщем-то все описал важное.


ksandr

  • Проверенный
  • ***
  • Сообщений: 138
  • ФИО: ksandr
Re: Зачача 2.21
« Ответ #43 : Декабрь 07, 2014, 01:05:09 pm »
Eufes Ваше решение открыть не смог, версия 1С старее, а вот решение MorningStalker открыл и просмотрел, не сказал бы, что оно правильное.
Установка РС курсыУЕ периодичности "месяц" считаю упрощением задания.
Не нашел решение этого "возможность корректного перепроведения документа", курс берется просто на дату документа, а при введении нового курса в РС с периодичностью месяц при перепроведении возьмется новый курс не смотря на то, что документом УстановкаКурсов движения уже скорректированы.
Сам документ УстановкаКурсов  то же не супер, из РБ мы будем брать все документы по контрагентам из табличной части, а зачем, не правильней ли взять только те у кого курс изменился.
Блокировать РС, в принципе наверно можно и так, я РБ блокирую. 
Свое решение выкладываю, все учтено, единственно не уверен в блокировках.


rusmosav

  • Проверенный
  • ***
  • Сообщений: 137
Re: Зачача 2.21
« Ответ #44 : Май 18, 2015, 03:23:31 pm »
Прощу оценить.
« Последнее редактирование: Май 19, 2015, 10:51:00 am от rusmosav »