Формирование партии

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
n0where
Местный житель
Сообщения: 499
Зарегистрирован: 30 дек 2010, 08:16

Формирование партии

Сообщение n0where »

Такая проблема:
есть настройка "Автоматическое формирование партий при оприходовании"

У нас используется один документ на ГП и на полуфабрикат. В некоторых случаях (по некоторым МЦ) на ПФ нам не нужно автоформирование партий, а в некоторых нужно.

Можно каким либо образом разрулить ситуацию.
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
oiko
Местный житель
Сообщения: 418
Зарегистрирован: 29 мар 2005, 17:49

Re: Формирование партии

Сообщение oiko »

Например такой мудреный способ.
Делаете алгоритм который должен будет выполниться после оприходывания.
В нем анализируете признаки ТМЦ, которые определят нужна или не нужна партия.
Если была не нужна удаляете ссылку на партию в спецификации накладной и ордера.
Пересчитываете сальдо по выбранной позиции складского ордера.
n0where
Местный житель
Сообщения: 499
Зарегистрирован: 30 дек 2010, 08:16

Re: Формирование партии

Сообщение n0where »

В принципе после размышлений к этому и пришли, но может есть более красивое решение.
Текущих остатков не пересчитать по МЦ, Складу, МОЛу на сколько мне известно
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
oiko
Местный житель
Сообщения: 418
Зарегистрирован: 29 мар 2005, 17:49

Re: Формирование партии

Сообщение oiko »

Я использовал функцию AddSaldoMC_Upd - она пересчитывает остатки
n0where
Местный житель
Сообщения: 499
Зарегистрирован: 30 дек 2010, 08:16

Re: Формирование партии

Сообщение n0where »

Код: Выделить всё

#doc
î«ñ¿Σ¿¬áµ¿∩ ßá½∞ñ«óδσ «ßΓáΓ¬«ó »« óσ«ñ∩Θ¿¼ »áαá¼ÑΓαá¼
#end
Function AddSaldoMC(
                     SP_       : word;
                     cMC_      : comp;
                     cPodr_    : comp;
                     cMOL_     : comp;
                     cParty_   : comp;
                     kol_      : double;
                     price_    : double;
                     vPrice_   : double;
                     cVal_     : comp;
                     priceN_   : double;
                     vPriceN   : double;
                     Date_     : date;
                     minKol_   : double;
                     del_      : boolean;
                     wVidOrder : word;
                     wTipOrd   : word
                   ): boolean;
Причем тут текущие остатки? Если эта функция пересчитывает сальдовые? по ордеру как я понимаю.
Для пересчета сальдовых остатков можно заюзать CountMC по определённой МЦ. Жалко конечно что отдельно по складу, но все равно.
Текущие же не пересчитать в разрезе каком нибудь...
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
oiko
Местный житель
Сообщения: 418
Зарегистрирован: 29 мар 2005, 17:49

Re: Формирование партии

Сообщение oiko »

Сформировать текущие по сальдовым - несложная задача.
Сальдовые нужно пересчитывать только по разрезу ордера - зачем лопатить всевозможные разрезы, т.к. они и так не изменились.
n0where
Местный житель
Сообщения: 499
Зарегистрирован: 30 дек 2010, 08:16

Re: Формирование партии

Сообщение n0where »

oiko писал(а):Сформировать текущие по сальдовым - несложная задача.
40 минут подождать пока текущие "перелопатятся по всевозможным разрезам"
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
oiko
Местный житель
Сообщения: 418
Зарегистрирован: 29 мар 2005, 17:49

Re: Формирование партии

Сообщение oiko »

Чтобы не флудить сообщаю - указанаая мною ф-ция модифицирует также и текущие остатки.
n0where
Местный житель
Сообщения: 499
Зарегистрирован: 30 дек 2010, 08:16

Re: Формирование партии

Сообщение n0where »

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