Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 07:15

Списание методом ФИФО

Автор wuwei, 17 авг 2010, 19:30

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

wuwei

Добрый день всем !
Ребята, изучаю 1С Программирование, задачки решаю.
Вон тут на одну напоролся не знаю как сделать, подскажите плз!
Есть Работники, у каждого есть кредитные карты.
Соответственно есть Регистр Накопления ОстаткиУРаботников: Измерения (Работник, Номер Кредитной карты), Ресурсы (Сумма).
Существует документ ПоступлениеКарты с реквизитами (Работник, Номер Карты, Сумма), которые делает движение прихода в вышеупомянутом регистре. И Существует документ ОказаниеУслуги с реквизитами (Работник, Контрагент, Сумма), который должен списывать по методу ФИФО с карт Работника деньги. То есть брать первую выданную карту, списывать с неё, если не хватило списывать еще с других карт, принадлежащих работнику. Проблема в том, что в документе ОказаниеУслуги нету реквизита карты, то есть просто Конструктором Движений соответствие в Регистре ОстаткиУРаботников не сделаешь, я полагаю надо как-то программно кодировать. Или как ?
Пример немного нереальный, но идея я думаю понятна.

YouAreEmpty

Думаю не "ПоступлениеКарты" а "ПоступлениеНаКарту", а то нелогично звучит. Автор а вы знаете что такое метод ФИФО и для чего он предназначен?

YouAreEmpty

Алгоритмов списания по фифо лифо несколько, самые популярные - это соеддинения таблицы по партиям с таблицей по необходимому колчеству и списание по дереву партий

YouAreEmpty

Но я не пойму для чего вам понадобился сдесь метод ФИФО?

wuwei

Цитата: YouAreEmpty от 17 авг 2010, 19:35
Алгоритмов списания по фифо лифо несколько, самые популярные - это соеддинения таблицы по партиям с таблицей по необходимому колчеству и списание по дереву партий
В чем состоит нзаю. Первым пришел - первым уходит.
Приходят именно карты. Новые карты поступают в распоряжение сотрудников.
Почему ФИФО - такова постановка задачи. Идеи есть какие-нибудь ?  :D

YouAreEmpty

То есть у сотрудников может быть несколько карточек, и с них по очереди должны списываться денежные средства?

wuwei

Цитата: YouAreEmpty от 17 авг 2010, 19:44
То есть у сотрудников может быть несколько карточек, и с них по очереди должны списываться денежные средства?
В точку !!

YouAreEmpty

Тогда формируй запрос по остаткам у регистра ОстаткиУРаботников и делай итого по полю Сотрудник, потом выгружай это в дерево значений, проходи дерево в цикле и списывай с каждой карточки.

wuwei

Цитата: YouAreEmpty от 17 авг 2010, 20:22
Тогда формируй запрос по остаткам у регистра ОстаткиУРаботников и делай итого по полю Сотрудник, потом выгружай это в дерево значений, проходи дерево в цикле и списывай с каждой карточки.
Да, только нужно еще учесть порядок прихода карточек и списывать по ФИФО.
Я так понял вы предлогаете это сделать в коде в Процедура ОбработкаПроведения ??

wuwei

Цитата: wuwei от 17 авг 2010, 20:52
Цитата: YouAreEmpty от 17 авг 2010, 20:22
Тогда формируй запрос по остаткам у регистра ОстаткиУРаботников и делай итого по полю Сотрудник, потом выгружай это в дерево значений, проходи дерево в цикле и списывай с каждой карточки.
Да, только нужно еще учесть порядок прихода карточек и списывать по ФИФО.
Я так понял вы предлогаете это сделать в коде в Процедура ОбработкаПроведения ??
Кажись написал запрос, в цикле его прошел, списывается с карт всё как надо. Спасибо за помощь  :zebzdr:

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск