Группа: Местный
Сообщений: 188
Спасибо сказали: 55 раз
Рейтинг: 0
Добрый день. Так как в работе с регистрами накопления опыта работы у меня минимум, прошу помочь и подсказать. Конфигурация пишется для учебного заведения. Идет оплата по курсам. В литературе которую читаю есть примеры и описание только такого принципа - запись в регистр накопления (минус) т.е. задолженность, и потом поступление (плюс), ну и разница если есть - остаток. Тут же нужно так. Есть к примеру 5 курсов, и за каждый курс при формировании договора идет начисление (минус), потом студент оплачивает, за каждый курс по отдельности или может сразу за три курса заплатить. И вот незнаю как правильно реализовать это в регистре, чтобы потом соответственно выводить задолженности за определенный курс в отчете. Буду очень благодарен за помощь.
Добрый день. Так как в работе с регистрами накопления опыта работы у меня минимум, прошу помочь и подсказать. Конфигурация пишется для учебного заведения. Идет оплата по курсам. В литературе которую читаю есть примеры и описание только такого принципа - запись в регистр накопления (минус) т.е. задолженность, и потом поступление (плюс), ну и разница если есть - остаток. Тут же нужно так. Есть к примеру 5 курсов, и за каждый курс при формировании договора идет начисление (минус), потом студент оплачивает, за каждый курс по отдельности или может сразу за три курса заплатить. И вот незнаю как правильно реализовать это в регистре, чтобы потом соответственно выводить задолженности за определенный курс в отчете. Буду очень благодарен за помощь.
В принципе можно добавить реквизит "Курс" и делать отбор по нему.
----------------------------------------------------------------------------------- Единственный, интуитивно понятный интерфейс - мамкина сиська! Всему остальному надо учиться! (с) Не знаю кто....
Измерения служат для обеспечения уникальности (+ всегда присутствует регистратор и пр.стандартные вещи) а реквизит - как информация к дополнению (сведению?).
Сообщение отредактировал DartRomanius - 21.06.12, 12:34
----------------------------------------------------------------------------------- Единственный, интуитивно понятный интерфейс - мамкина сиська! Всему остальному надо учиться! (с) Не знаю кто....
Группа: Местный
Сообщений: 188
Спасибо сказали: 55 раз
Рейтинг: 0
Можете подробней рассказать, ато путанина получается у меня. Добавил регистр накопления - ОплатыСтудентов Измерения: 1. Студент - Справочник.Студенты 2. Курс - Перечисления.НомерКурса Ресурсы: СуммаОплаты - Число 10, точность 2, неотрицательное
Теперь формирую документ ДоговорСтудента Идет проведение по регистру
Движения.ОплатыСтудентов.Записывать = Истина; Движение = Движения.ОплатыСтудентов.Добавить(); Движение.ВидДвижения = ВидДвиженияНакопления.Расход; Движение.Период = Дата; Движение.Студент = Студент; // Движение.Курс = 1 // Движение.СуммаОплаты = Объект.ОплатаКурс1; - так соответственно для 2,3,4 курсов?
Ок, пусть так. Тогда как принимать оплату Есть документ ПриемОплаты
Теперь при проведении, проверять остатки за каждый курс? И который не оплачен проплачивать, и ещё учитывать, если сумма больше суммы за задолженность к примеру за 1-й курс, то ещё и добавлять к второму, короч я запутался.
Группа: Местный
Сообщений: 188
Спасибо сказали: 55 раз
Рейтинг: 0
Цитата(Ardi @ 21.06.12, 14:25)
Пусть руками распределяют сумму по курсам
Также создать отдельный документ которым можно перераспределять переплаченные/недоплаченные деньги между курсами.
А вообще танцевать нужно с конца. Что как выглядит техпроцесс когда слушателя пускают/не пускают на курсы?
Не ну руками то уже очень нелогически как-то. Можно канеш елементарно, формировать общую сумму задолженности, и потом погашать её, а при выводе отчета, создать процедуру которая осуществляет: Общая сумма задолженности - ОстатокЗадолженности. и
Если ОтчетКурс1=Истина Тогда //Где ОтчетКурс1 параметр вывода отчета а= Общая сумма задолженности - ОстатокЗадолженности; б= а - ЦенаКурс1; Возврат б;
Но все же, может как-то получьше можно это реализовать. У кого будут ещё идеи?
Группа: Местный
Сообщений: 188
Спасибо сказали: 55 раз
Рейтинг: 0
Цитата(Vofka @ 21.06.12, 15:24)
Нужно измерение в регистре Курс. Вот и всё. И руками разносить оплату по курсам. Другого не дано.
А общую сумму как выводить? И ещё, есть такое что студент переводится с одного факультета на другой, и там сумма за обучение другая, тогда он получится в переплате, как в регистре перенести тогда? Отдельно ещё один документ для переноса создавать?
Группа: Основатель
Сообщений: 13982
Из: Киев
Спасибо сказали: 4550 раз
Рейтинг: 3678.1
Цитата(Fabri @ 21.06.12, 15:58)
А общую сумму как выводить?
Варианты ответов будут?
Цитата
И ещё, есть такое что студент переводится с одного факультета на другой, и там сумма за обучение другая, тогда он получится в переплате, как в регистре перенести тогда? Отдельно ещё один документ для переноса создавать?
Да, аля "Перемещение товаров студентов". При проведении выводите регистр по студенту и курсу в 0 и записываете потом новую сумму. Ну это мне так кажется, а я ж хз как оно должно в итоге получиться и какие есть нюансы данного процесса.
Группа: Местный
Сообщений: 188
Спасибо сказали: 55 раз
Рейтинг: 0
Все таки решил делать по такому принципу. Создается договор, регистр - ОплатыСтудентов - расход на общую сумму. Документ - ПриемОплаты - Приход соответственно. Но щас появилась новая проблема. Имею Остаток задолженности. Имею общую сумму. Именю цены за каждый курс. Но никак не получается вывести ни в отчете, ни допустим в форме задолженность. Суммы получаются непонятные. Может кто-то более силён в математике и логике, прошу помочь:
пример:
A=22500 - общая сумма B=8580 - остаток задолженности x1 = 4000 - цена за 1-й курс x2 = 4200 - цена за 2-й курс x3 = 4500 - цена за 3-й курс x4 = 4800 - цена за 4-й курс x5 = 5000 - цена за 5-й курс
Как обчислить остаток задолженности за каждый из курсов?
Группа: Местный
Сообщений: 188
Спасибо сказали: 55 раз
Рейтинг: 0
Цитата(Ardi @ 02.07.12, 15:42)
Не расстраивайтесь, за годик всё получится.
Та я не расстраиваюсь, конфа пишется на добровольных началах, без какой либо оплаты. Просто подкрепление теоретических знаний на практике. Но вот как в любом языке программирования, в книге описанны только сами функции, операторы и т.д., а вот сама логика и приемы программирования, это дело наживное, поэтому и приходится просить помощи, у старшых братьев, которые эту школу уже прошли
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Храните данные в регистре (регистр Остатков) в разрезе курсов, и так же разносите по курсам оплату. В таком случае получение разных данных (отчеты, движения) будет простым.
Это что бы понять логику (к приемам программирования не имеет отношения):
Если Оплачено > (х1+х2+х3+х4+х5) Тогда сообщить("Оплачено больше чем необходимо"); ИначеЕсли Оплачено = (х1+х2+х3+х4+х5) Тогда сообщить("Оплачено 5 курсов"); ИначеЕсли Оплачено > (х1+х2+х3+х4) Тогда сообщить("Оплачено 4 курса и часть 5го"); ИначеЕсли Оплачено = (х1+х2+х3+х4) Тогда сообщить("Оплачено 4 курса"); ИначеЕсли Оплачено > (х1+х2+х3) Тогда сообщить("Оплачено 3 курса и часть 4го"); ИначеЕсли Оплачено = (х1+х2+х3) Тогда сообщить("Оплачено 3 курса"); ИначеЕсли Оплачено > (х1+х2) Тогда сообщить("Оплачено 2 курса и часть 3го"); ИначеЕсли Оплачено = (х1+х2) Тогда сообщить("Оплачено 2 курса"); ИначеЕсли Оплачено > х1 Тогда сообщить("Оплачено 1 курс и часть 2го"); ИначеЕсли Оплачено = х1 Тогда сообщить("Оплачено 1 курс"); ИначеЕсли Оплачено < х1 и А > 0 Тогда сообщить("Оплачено меньше одного курса"); Иначе сообщить("Оплат нет"); КонецЕсли;
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Местный
Сообщений: 188
Спасибо сказали: 55 раз
Рейтинг: 0
Цитата(logist @ 02.07.12, 16:23)
Храните данные в регистре (регистр Остатков) в разрезе курсов, и так же разносите по курсам оплату. В таком случае получение разных данных (отчеты, движения) будет простым.
Так лекче всего, и мне проще, но, тогда методисту прийдется учитывать задолженность, т.е. если студент должен за 1-й курс ещё 1300 грн, а проплатил 2500, тогда 1300 она вносит по реквизиту 1-й курс, а 1200 грн по реквизиту 2-й курс, но тут присутствует человеческий фактор, и возможны ошибки и т.д.
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0
Цитата(Fabri @ 02.07.12, 16:30)
но, тогда методисту прийдется учитывать задолженность, т.е. если студент должен за 1-й курс ещё 1300 грн, а проплатил 2500, тогда 1300 она вносит по реквизиту 1-й курс, а 1200 грн по реквизиту 2-й курс, но тут присутствует человеческий фактор, и возможны ошибки и т.д.
Реализуйте заполнение документа Оплаты по курсам (по принципу ФИФО), ну или без ручного заполнения, при проведении автоматом раскидывайте по курсам, это самое логичное решение.
Личные бесплатные консультации не даю, для этого есть форум!
Группа: Местный
Сообщений: 188
Спасибо сказали: 55 раз
Рейтинг: 0
!
Правила, п .13
Хотя при проплате, можно учитывать остаток задолженности, и если сумма проплаты больше - выдавать ошибку.
Цитата(logist @ 02.07.12, 16:32)
Реализуйте заполнение документа Оплаты по курсам (по принципу ФИФО), ну или без ручного заполнения, при проведении автоматом раскидывайте по курсам, это самое логичное решение.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!