|
В каких случаях поле "Доступно" больше поля "В наличии" в подборе? | ☑ | ||
---|---|---|---|---|
0
SkillUp
24.02.20
✎
13:28
|
Здравствуйте, ситуация - https://drive.google.com/open?id=1O4rhII2qaUHAti_1xWfWer9DkNmEncX1 Вроде как, доступно должно быть всегда рано или меньше чем "В наличии". Или я не прав? А у меня наоборот.
Из интернета: В наличии показывается весь складской остаток (с учетом всяких резервов под заказы), а в колонке Доступно показан именно свободной складской остаток (за минусом резервов). И подскажите как вычиляются эти колонки, не могу добраться до кода. Там как-то через объединение, списка номенкдатуры, списка характеристик и остатков. А где именно отсатки вычисляются? Что-то запутался с этими колонками... |
|||
1
Галахад
гуру
24.02.20
✎
13:41
|
Скорее всего так и вычисляется. Количество - резерв. Если резерв отрицательный, то свободный остаток может быть бОльшим.
|
|||
2
Повелитель
24.02.20
✎
13:44
|
(0) Сейчас телепаты попробуют угадать твою конфигурацию.
|
|||
3
vcv
24.02.20
✎
14:56
|
Либо в конфигурации есть регистр резервов и из-за правок задним числом образовался "красный" резерв. Либо в конфигурации есть регистр свободных/доступных остатков и из-за правок задник числом свободный остаток стал больше фактического. Или не из-за правок задним числом, а из-за программных ошибок. Самое главное - определиться с конфигурацией, телепатов тут нет.
|
|||
4
SkillUp
24.02.20
✎
15:09
|
(3) Спасибо.
|
|||
5
Cthulhu
24.02.20
✎
15:36
|
методологическая ошибка разработчика: отмена резервов отдельным документом оперирует не значениями движений резервов отменяемого документа, а единоразово импортирует эти движения и на основании зафиксированных в документе (отмены резервов) данных делает сторно-движения.
последствия, возможные в случаях корректировки документа, по которому уже отменены резервы - рассогласование движений резервов с отменой резервов, в том числе - отрицательные резервы (когда отредактированный документ увеличивает резервы на мЕньшее количество, нежели не измененный соответствующим образом документ отмены резервов их сторнирует). следствие методологической ошибки разработчика: постоянно держать в уме возможность подобного рассогласования данных, и при любой корректировке документа, формирующего резервы - искать документы, которые отменяют резервы по этому документу и соответствующим образом корректировать еще и снятие резервов. или заказывать доработки, облегчающие подобные (весьма трудоемкие и порой не очевидные) действия. как-то так... |
|||
6
SkillUp
24.02.20
✎
15:59
|
(5) Ого! Спасибо!
|
|||
7
SkillUp
24.02.20
✎
19:47
|
Может кто-то искать будет, формирование кода происходит в функции ТекстЗапросаСпискаФормыПодбора(Форма, ТипСписка), в Общем модуле - "ПодборТоваровСервер".
|
|||
8
Злопчинский
24.02.20
✎
21:42
|
(5) "...отмена резервов отдельным документом оперирует не значениями движений резервов отменяемого документа..."
как-то мутно непонятно. есть резерв. резерв, допустим, фиксируется в разрезе "заявки покупателя". но резерв могут двигать кучу разных других документов, а не только сама "заявка покупателя" (или как в 8-ке сделано?). для отмены резерва (например, условно документ "СнятиеРезерва"), как я полагаю в меру своего незнания, следует прочитать _текущие_остатки_резерва_ (тут мне непонятно почему упоминается "движения резервов отменяемого документа") и снять/закрыть их в 0. В 8-ке не так сделано? В клюшках я еще для документа СнятиеРезервов (можно снимать не полностью, а частично - столько сколько указано в документе снятия) делал правку - если в результате каких-либо действий на резерве стоит 50шт, а в документе снятия указано 70шт - то снимаем весь возможный резерв НЕ ПРЕВЫШАЮЩИЙ указанное в документе (штатно при описанной ситуации 50-70 документ снятия не проводился) |
|||
9
Злопчинский
24.02.20
✎
21:44
|
Насчет Доступон = Количество-Резерв я на формуе писал тыщу раз. такая "ошибка" в клюшках есть (что ведет к нарастанию проблемы снежным комом). Занятно, если такая же ошибка и в 8-ке...
|
|||
10
SkillUp
25.02.20
✎
12:29
|
(9) Вот строка из запроса по этим колонкам:
ВЫРАЗИТЬ(ЕСТЬNULL(СвободныеОстатки.ВНаличииОстаток, 0) / ЕСТЬNULL(ЦеныНоменклатуры.Упаковка.Коэффициент, 1) КАК ЧИСЛО(15, 3)) КАК ВНаличииОстаток, ВЫРАЗИТЬ((ЕСТЬNULL(СвободныеОстатки.ВНаличииОстаток, 0) - ЕСТЬNULL(СвободныеОстатки.ВРезервеПодЗаказОстаток, 0) - ЕСТЬNULL(СвободныеОстатки.ВРезервеСоСкладаОстаток, 0) + ЕСТЬNULL(ОстаткиИзЗаказов.Количество, 0)) / ЕСТЬNULL(ЦеныНоменклатуры.Упаковка.Коэффициент, 1) КАК ЧИСЛО(15, 3)) КАК Доступно |
|||
11
SkillUp
25.02.20
✎
12:39
|
Конкретно у меня: ВРезервеПодЗаказОстаток идет минусом.
Исходя из строки моего запроса - ВЫРАЗИТЬ((ЕСТЬNULL(СвободныеОстатки.ВНаличииОстаток, 0) - ЕСТЬNULL(СвободныеОстатки.ВРезервеПодЗаказОстаток, 0) - ЕСТЬNULL(СвободныеОстатки.ВРезервеСоСкладаОстаток, 0) + ЕСТЬNULL(ОстаткиИзЗаказов.Количество, 0)) / ЕСТЬNULL(ЦеныНоменклатуры.Упаковка.Коэффициент, 1) КАК ЧИСЛО(15, 3)) КАК Доступно поэтому и плюсует. |
|||
12
SkillUp
25.02.20
✎
12:41
|
(11) Два минуса дают плюс.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |