-
Кто как определяет две эти проклятые даты: ДатаПолнойОтгрузки и ДатаПоследнегоНачисленияПени? Где то здесь же на форуме читал, что их надо из регистре накопления вытаскивать, но там без реальных таблиц регистров никак не получается. Можно конечно их в РС запихивать, но что то мне не нравится это: у него несколько регистраторов получается, записи надо будет удалять от туда (после того как клиент все оплатит, они нам по сути не нужны уже)
-
Получаю эти даты из виртуальной таблицы ОстаткиИОбороты с периодичностью Регистратор и условием что КоличествоОстаток после этого регистратора стало 0 или ПениПриход в данном регистраторе > 0
Добавлено (07.10.2010, 17:19)
---------------------------------------------
Я вот не указал сумму в счете, а указываю их в расходной.
Так можно делать или нет?
Вложения:
Zhora_Vlg-1.37.dt
-
Zhora_Vlg,
Quote
Получаю эти даты из виртуальной таблицы ОстаткиИОбороты
Параметр ДатаНачала = Неопределено? Скорее всего да, только это не нравится. Хотя интересно
Quote
Я вот не указал сумму в счете
А в чем смысл счета то, тогда, если он без суммы=)Или ты про что?
-
Zhora_Vlg
В твоем решении получается например:
счет от 01.10.2010 на 5000
расходная от 05.10.2010 отгрузили полностью
оплата 10.10.2010 на 5000
Пени не начисляются, хотя должны за 5 дней просрочки !!
Какой порядок проведения документа Приход денег ?!
1. Начислить пени
2. Распределить сумму оплаты на пени (Остаток + Начисленные пени п.1)
3. Распределить оставшуюся сумму оплаты на оплату самих счетов
Набросал решение:
Вложения:
1_37.dt
-
Решила на 2х регистрах накопления остатки:
1. ОстаткиПоСчетам: измерения - Контрагент, Счет; ресурсы - Сумма. Используется для отражения задолженности компании перед контрагентом по отгрузке.
Движения в "+" - документ Счет.
Движения в "-" - документ Расх. накл.
2. Взаиморасчеты: измерения - Контрагент, Счет; ресурсы - Сумма, Пени. Используется для отражения задолженности контрагента перед компанией по отгрузке.
Движения в "+" - документ Счет.
Движения в "-" - документ Приход денег. Запрос в документе "Приход денег" получился достаточно громоздким, но не сложным.
Вложения:
_1_37.dt
-
Тоже через 2 регистра
но по своему:)
не оптимизировал в приходе денег конечно надо было через МенеджерВТ передать но уже ломало
Вложения:
1_37_lukashov.dt
-
Отгруженные и Неоплаченные = Неоплаченные - Неотгруженные
-
Решил на 3х регистрах остатков:
1. Счета: измерение Счет, ресурс Сумма. Задолженность компании перед контрагентом по отгрузке(правда нет измерения Контрагент - условие задачи его не требует).
Движения в "+" - документ Счет.
Движения в "-" - документ Расх. накл.
2. ЗадолженностьПокупателя: измерение Счет, ресурсы Сумма. Задолженность контрагента перед компанией по отгрузке без учета пени.
Движения в "+" - документ Счет.
Движения в "-" - документ Приход денег(ПД).
3. Пени: измерение Счет, ресурсы Сумма. Задолженность контрагента перед компанией по пеням.
Движения в "+" - начисляние пени в ПД.
Движения в "-" - оплата пени в ПД.
В запросе в документе "Приход денег" 9 подзапросов:
Code
Результат = Запрос.ВыполнитьПакет();
// Результат[0..5] - вт
// Результат[6] - начисление пени
// Результат[7] - оплата задолженности по пеням
// Результат[8] - оплате задолженности по отгрузке
В отчете "Анализ счета за период" непонятно что такое колонка "Задолженность" - это остаток на конец регистра или сумма документа ?
Я сделал четыре доп. колонки "Отгрузка", "Задолженность по отгрузке", "Оплата пеней" и "Задолженность по пеням" как остаток на конец и расход регистра.
Вложения:
1.37_OlegSm.dt
-
Все 3 задача раздела № 1 по расчету пени нужно решить обязательно .. очень хитрые задачи ..
Вложения:
DoctorRoza_1_37.dt
-
DoctorRoza, конечно "хитрые". У вас кстати на трех регистрах, а это не очень хорошо, и в отчете "Анализ" зачем использовать вирт. таблицу ОстаткиИОбороты, просто Оборотов по моему достаточно.
Мое решения на двух регистрах, на мой взгляд оптимальное и простое (по крайне мере проще чем здесь выше выложено). Видел решение и на одном регистре, но оно мне показалось очень емким.
Вложения:
Denov_1.37.dt
-
Denov, вот до меня никак не дойдет, что же лучше .. либо лишний ресурс/измерение добавить в регистры или добавлять отдельный регистр. Видится логичным, что работать легче с отдельным регистром, ведь он выступает как отдельный источник данных, отдельная таблица. В данной задаче, пени выступают как данные, которые нужно работать "в плотную". Они критичны .. поэтому и видеться целесообразным их вынести в отдельный регистр. Вы правы, что это менее оптимально, но вот насчет простоты .. это вызывает сомнение. Хотя, в итоге, все зависит от компетенции разработчика, найти вот эту "золотую середину".
////////////////
А вот что мне бросилось в глаза .. в приходе .. не ошибка ..
|ВЫБРАТЬ
| ВзаиморасчетыОстатки.Счет КАК Счет,
| ЕСТЬNULL(ВзаиморасчетыОстатки.СуммаОстаток, 0) КАК Долг,
| ЕСТЬNULL(ВзаиморасчетыОстатки.ПениОстаток, 0) КАК Пени
|ПОМЕСТИТЬ ВТОтгрНеОпл
|ИЗ
| РегистрНакопления.Взаиморасчеты.Остатки(
| &Момент,
| (НЕ Счет В
| (ВЫБРАТЬ
| Т.Счет
| ИЗ
| ВТНеотгруженныеСчета КАК Т))
| И Счет В
| (ВЫБРАТЬ
| Т.Счет
| ИЗ
| ВТСчетаДок КАК Т)) КАК ВзаиморасчетыОстатки
|
Счета Вы получаете из регистра, где параметром является ВТСчетаДок, ограничиваете их. И одновременно получаете эти же счета из ВТСчетаДок, масло масляное .. ))) ..
Ну а в целом хорошее решение .. 4 подзапросика в последнем пакете правда позабавили .. )))
-
Еще одно решение. Довольно громоздкие запросы, конечно.
Особенность в том, что новые пени начисляются ДО любых оплат по данному счету. Таким образом, пришедшие деньги расходуются на погашение в том числе свеженачисленных пеней. Если посмотреть на решение DoctorRoza, первая оплата создает задолженность по пени и гасит вовсе не ее, а основной долг. Что противоречит условиям задачи.
После расчета и погашения пеней по всем счетам, в соответствии с условиями, начинают гаситься основные задолженности.
Вложения:
irmo-1.37.dt
-
DoctorRoza,
Посмотрел ваше решение. Есть темы для обсуждения
В вашем решении оплатить счет можно, только если по нему была отгрузка. Т.е. счет выставляется, а платить по нему нельзя. В отчете (В задании)оплаты проходят раньше полной отгрузки.
По идее в случае оплаты надо заплатить по всем пеням по всем счетам, а потом платить задолженность по счету.
«В первую очередь оплата распределяется на все начисленные пени, а потом уже на счета, начиная с самого раннего недооплаченного.»
И самое интересное это отчет «Анализ состояния счет» я думаю, что отчет должен показывать Неуплаченную пеню на дату отчета, а не на дату документа(остатки по пене). Т.е. сколько мы должны заплатить по счету и по пене, если новый документ ПриходДенег будет вводиться датой отчета.
Такой вариант решения задачи.
Спасибо за комментарии и замечания.
Вложения:
kow1976_1.37.dt
-
У задачи нужно выделить следующие моменты:
1. При проведении счета возникают обязанности по оплате (у покупателя) и по отгрузке (у продавца). Это значит, что делаем записи прихода в два регистра: ОстаткиПоСчетам (обязанности по отгурзке) и Взаиморасчеты (обязанности по оплате).
Итак: документ счет делает простые движения прихода по двум регистрам.
2. При проведении расходной накладной проверяем остаток по счету в регистре ОстаткиПоСчетам (хорошо бы это сделать, так называемой, "новой методикой проведения"). Таким образом: документ "РасходнаяНакладная" делает движения по одному регистру обязанностей по отгрузке с предварительной проверкой наличия этих обязанностей.
3. Проведение "ПриходаДенег" самое насщенное место в задаче. Делаем движения по регистру взаиморасчетов с покупателями. В первую очередь, списываем существующие остатки по пеням. Затем начисляем и списываем остатки по текущим пеням. И в последнюю очеред раскидываем сумму по счетам (если осталось).
Где хранить пени? Мне кажеться, равноценно, можно признак пеней хранить в измерении, или сумму пеней в ресурсе. Кому что ближе.
Блокировать нужно оба регистра накопления, т.к. оба обуславливают ход проведения документа.
-
А вот и пример решения задачи
Вложения:
andrew-ko_1.37.dt
-
Ни какого контроля в документе Расходная делать не нужно?! кто думает по другому?
-
Здравствуйте!
Опять напоролся на собственное непонимание условий в вирт.таблицах...Если не трудно, подскажите, как можно исправить решение.
Вложения:
5683327.dt
-
Quote (andrew-ko)
1. При проведении счета возникают обязанности по оплате (у покупателя) и по отгрузке (у продавца). Это значит, что делаем записи прихода в два регистра: ОстаткиПоСчетам (обязанности по отгурзке) и Взаиморасчеты (обязанности по оплате).
Итак: документ счет делает простые движения прихода по двум регистрам.
Не совсем верно. Движения по увеличению долга (по регистру Взаиморасчёты) должна делать РН.
-
safer,
Quote (safer)
Движения по увеличению долга (по регистру Взаиморасчёты) должна делать РН.
Это-то как раз и не правильно.
Обязанности по отгрузке и оплате возникают при проведении счета.
Долго над этим голову ломал.
А точку в этом вопросе поставил методист 1С М. Радченко. На форуме для начинающих http://devtrainingforum.v8.1c.ru/forum/ по этой или подобной задаче возникал вопрос.
В пользу такого решения, указывает и то, что если решать, как вы говорите, то красивых и лаконичных решений просто не может быть. Всё как-то из "подвыверта" выходит. Посмотреть только предложенные решения.
-
Quote (andrew-ko)
safer,
Quote (safer)
Движения по увеличению долга (по регистру Взаиморасчёты) должна делать РН.
Это-то как раз и не правильно.
Обязанности по отгрузке и оплате возникают при проведении счета.
Долго над этим голову ломал.
А точку в этом вопросе поставил методист 1С М. Радченко. На форуме для начинающих
http://devtrainingforum.v8.1c.ru/forum/ по этой или подобной задаче возникал вопрос.
В пользу такого решения, указывает и то, что если решать, как вы говорите, то красивых и лаконичных решений просто не может быть. Всё как-то из "подвыверта" выходит. Посмотреть только предложенные решения.
andrew-ko, посмотрите отчет по Счету . Именно РН увеличивает долг.Добавлено (12.04.2012, 02:06)
---------------------------------------------
решается без вопросов))) получаете в запросе все неотгруженные, потом все неоплаченные за исключением неотгруженных => это будут неоплаченные и отгруженные, а дальше дело техники
-
Мой вариант (вот, правда, не посмотрела как другие решали - поленилась)
Спасибо тому, кто заглянет в моё решение.
Вложения:
justaria_1.37.dt
-
Здавствуйте!
А кому-нибудь на экзамене попадалась эта задача? Как решали?
-
Хотелось бы услышать комментарии потому что не видел таких решений, все какие то через чур сложные....а можно решить как мне кажется легче.
Вложения:
1.37pavlyk.dt
-
Посмотрел решение тех кто типа профи.
Поймите, что задолженность покупателя возникает не в момент выставления счета, а в момент отгрузки, т.е. при проведении расходной накладной.
Оптимальная архитектура:
РС ДанныеСчетов
Измерение - счет
Ресурсы
%пени
ДатаПолнойОтгрузки
ДатаСчета
РС НачислениеПенейПосчету - подчинено регистратору ПриходДенег
Измерение Счет
Ресурс ДатаПени
РН Взаиморасчеты
Измерение Счет
Ресурсы
Сумма
Пеня
РН ОтгрузкиПоСчетам - не уверен что он нужен в рамках этой задачи, т.к. не надо контроллировать отгрузки.
Измерение Счет
Ресурс сумма
-
Решил на одном регистре накопления "Взаиморасчеты" - Измерения:"Счет" Ресурсы: "Сумма", "Пени"... правда, долго продумывал оптимизированный и компактный механизм в рамках данной задачи, но в итоге, как теперь кажется, довольно простое решение... щас 16 билет дорешаю в который входит эта задачка и выложу... буду признателен за критику =)
-
На основании http://devtrainingforum.v8.1c.ru/forum/thread.jsp?id=574006#574006
Мой вариант решения задачи.
Спасибо за комментарии и замечания.
Вложения:
1.37_judge.dt
-
Мой вариант решения
Вложения:
KTT_1_37.dt
-
очередная геморная задача, отлаживать приходится в два этапа, сначала реализуешь обработку проведения в ПриходДенег чтобы начислились пени, затем начинается второй этап отладки с имеющимися пени.
Первый отчет 1 в 1 как в з.1.26
Добавлено (31.07.2013, 22:49)
---------------------------------------------
подправил
Вложения:
1.37.dt
-
To artfa
Есть ашиПка мааленькая- В отчтете не выводятся суммы "не оплачено пеней" =)
-
Реализовал так, кто что скажет? Вопрос по документу приход денег, в момент проведения документа начисляются пени по отгруженным не оплаченным счетам, далее эти начисленные пени должны сразу списываться этим же документом?
-
Как то тяжело пошла задача
-
Как то тяжело пошла задача
Я осилил проведение денег всего лишь за 3 временные таблицы.WIN! :))
-
Прощу оценить.
-
Всем привет. Задача аналогична 1.25\1.26, за исключением запроса в ПриходеДенег, а точнее его последующей обработки.
-
Всем привет. Задача аналогична 1.25\1.26, за исключением запроса в ПриходеДенег, а точнее его последующей обработки.
Подкорректировал
-
Доброго времени суток! Какая же сложная задача. Можете подсказать верно ли я понимаю алгоритм документа "Движение денег"
1) Допустим "счёт 1 от 01.08.2020 на сумму 3500". Разгрузка полная была 05.08.2020
2) Оплата через приход денег от 07.08.2020 указываем "счёт 1" , сумма к оплате 2500
3) Пени начисляются на 5 дней просрочки? А если в приходе денег сразу указать сумму 3500, то нужно использовать новую методику проведения и пени не начисляются?