|
Создание перемещения с партией в табличной части документа | ☑ | ||
---|---|---|---|---|
0
Tolstiy Beremenniy
21.12.18
✎
06:21
|
Столкнулся со сложностью написания запроса модуля проведения
документа перемещение товаров. У документа, в шапке: -СкладИсточник -СкладПриемник в табличной части: -Номенклатура -Партия -Цена -Количество Нужно производить контроль остатков. Если партия не выбрана в табличной части, списывать по методу FIFO. Если выбрана, то сначала с указанной партии. Можете подсказать по запросу для данного решения? |
|||
1
PuhUfa
21.12.18
✎
06:36
|
(0) покажи запрос который ты уже написал
|
|||
2
Tolstiy Beremenniy
21.12.18
✎
06:46
|
(1) Вот смотрю в консоле запросов.
Что то пока общая картина туго соображается. К примеру в табличную часть вводятся строки с номенклатурой и количеством, где партия указанна а где то не указана. И количество разное. Если партия указана, то списывается сначала с неё, а потом по методу FIFO. Где не указана списываться должно по методу FIFO. ВЫБРАТЬ ПеремещениеТоваровСписокНоменклатуры.Номенклатура КАК Номенклатура, ПеремещениеТоваровСписокНоменклатуры.Партия КАК Партия, МАКСИМУМ(ПеремещениеТоваровСписокНоменклатуры.Цена) КАК Цена, МАКСИМУМ(ПеремещениеТоваровСписокНоменклатуры.Количество) КАК Количество ПОМЕСТИТЬ ВТ_ДокТч ИЗ Документ.ПеремещениеТоваров.СписокНоменклатуры КАК ПеремещениеТоваровСписокНоменклатуры ГДЕ ПеремещениеТоваровСписокНоменклатуры.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО ПеремещениеТоваровСписокНоменклатуры.Номенклатура, ПеремещениеТоваровСписокНоменклатуры.Партия ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПродуктыНаСкладахОстатки.Номенклатура КАК Номенклатура, ВТ_ДокТч.Количество КАК Количество, ПродуктыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток, ПродуктыНаСкладахОстатки.ЦенаОстаток КАК ЦенаОстаток, ПродуктыНаСкладахОстатки.Партия КАК Партия ИЗ ВТ_ДокТч КАК ВТ_ДокТч ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПродуктыНаСкладах.Остатки( &Период, Номенклатура В (ВЫБРАТЬ ВТ_ДокТч.Номенклатура ИЗ ВТ_ДокТч КАК ВТ_ДокТч) И Партия В (ВЫБРАТЬ ВТ_ДокТч.Партия ИЗ ВТ_ДокТч КАК ВТ_ДокТч) И Склад = &СкладИсточник) КАК ПродуктыНаСкладахОстатки ПО ВТ_ДокТч.Номенклатура = ПродуктыНаСкладахОстатки.Номенклатура УПОРЯДОЧИТЬ ПО Номенклатура |
|||
3
Лодырь
21.12.18
✎
06:48
|
(0) Это стандартная задача из экзамена спеца по платформе. Смотри разбор билетов.
|
|||
4
Tolstiy Beremenniy
21.12.18
✎
06:52
|
(3) Вроде как похожую видел, билет 4. Но смотрел примеры
так как то сильно мутно. Так мутно что не понятно ничего. Какие например билеты, где можно было бы посмотреть пример? я ничего подобного не нашел. Как это решить пока не нашел способа!!! завис на поиске решения. и у самого идей нет. Есть идеи сделать в модуле проведения перебор табличной части и списание или не списание с партии если есть партия в тч. Или по методу FIFO если нет партии. Но это ка кто примитивно и не правильно кажется. |
|||
5
PuhUfa
21.12.18
✎
07:14
|
ВТпоТЧ
Номенклатура КоличествоДокумент УказаннаяПартия ВТпоОстаткамПарий Номенклатура КоличествоОстаток ПартияОстатка Выбор из ВТпоТЧ с левым соединением к ВТпоОстаткамПарий По номенклатура и если УказаннаяПартия = ПартияОстатка то выставляешь ПорядокСписания = 1 иначе ПорядокСписания = 2 на выходе: Номенклатуа КоличествоДокумент КоличетсвоОстаток ПартияСписания ПорядокСписания Сортируешь по ПорядкуСписания и ДатеПартииОстатка Ну и потом уже перебираешь результат запроса не забывая считать сколько уже списал... Что то типа такого... |
|||
6
Tolstiy Beremenniy
21.12.18
✎
07:40
|
(5) Не дастся мне видимо такое описание (((((
Вроде задача 1.29 похожая.....? |
|||
7
Tolstiy Beremenniy
21.12.18
✎
07:42
|
боюсь не сдвинуться в решении(((((
|
|||
8
Tolstiy Beremenniy
21.12.18
✎
07:49
|
тут есть что либо полезное?
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | РасходнаяНакладнаяСписокНоменклатуры.Номенклатура, | СУММА(РасходнаяНакладнаяСписокНоменклатуры.Количество) КАК Количество, | СУММА(РасходнаяНакладнаяСписокНоменклатуры.Сумма) КАК Сумма, | РасходнаяНакладнаяСписокНоменклатуры.Партия КАК СПартии |ПОМЕСТИТЬ ДокТЧ |ИЗ | Документ.РасходнаяНакладная.СписокНоменклатуры КАК РасходнаяНакладнаяСписокНоменклатуры |ГДЕ | РасходнаяНакладнаяСписокНоменклатуры.Ссылка = &Ссылка | |СГРУППИРОВАТЬ ПО | РасходнаяНакладнаяСписокНоменклатуры.Номенклатура, | РасходнаяНакладнаяСписокНоменклатуры.Партия |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ОстаткиНоменклатурыОстатки.Номенклатура КАК Номенклатура, | ЕСТЬNULL(ДокТЧ.Количество, 0) КАК Количество, | ЕСТЬNULL(ДокТЧ.Сумма, 0) КАК Сумма, | ДокТЧ.СПартии КАК СПартии, | ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток, | ЕСТЬNULL(ОстаткиНоменклатурыОстатки.СуммаОстаток, 0) КАК СуммаОстаток, | ОстаткиНоменклатурыОстатки.Партия |ИЗ | ДокТЧ КАК ДокТЧ | ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки( | &МоментВремени, | Номенклатура В | (ВЫБРАТЬ | ДокТЧ.Номенклатура | ИЗ | ДокТЧ КАК ДокТЧ)) КАК ОстаткиНоменклатурыОстатки | ПО ДокТЧ.Номенклатура = ОстаткиНоменклатурыОстатки.Номенклатура | И ДокТЧ.СПартии = ОстаткиНоменклатурыОстатки.Партия | |УПОРЯДОЧИТЬ ПО | СПартии УБЫВ, | ОстаткиНоменклатурыОстатки.Партия "+МетодУпорядочиванияЗаписей+" |ИТОГИ | СУММА(Количество), | СУММА(Сумма), | СУММА(КоличествоОстаток) |ПО | Номенклатура"; Запрос.УстановитьПараметр("МоментВремени", МоментВремени); Запрос.УстановитьПараметр("Ссылка", Ссылка); Запрос.УстановитьПараметр("Партии", СписокНоменклатуры.ВыгрузитьКолонку("Партия")); Результат = Запрос.Выполнить(); ВыборкаНоменклатура = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаНоменклатура.Следующий() Цикл Если ВыборкаНоменклатура.Количество > ВыборкаНоменклатура.КоличествоОстаток И ВыборкаНоменклатура.Номенклатура.ВидНоменклатуры = Перечисления.ВидыНоменклатуры.Товар Тогда Отказ = Истина; Сообщить("Не достаточно товара: "+ВыборкаНоменклатура.Номенклатура +", имеется: "+ВыборкаНоменклатура.КоличествоОстаток +", необходимо: "+ВыборкаНоменклатура.Количество); КонецЕсли; Если Отказ Тогда Продолжить; КонецЕсли; Себистоимость = 0; Если ВыборкаНоменклатура.Номенклатура.ВидНоменклатуры = Перечисления.ВидыНоменклатуры.Товар Тогда НеобходимоСписать = ВыборкаНоменклатура.Количество; ВыборкаДетальныеЗаписи = ВыборкаНоменклатура.Выбрать(); Движения.ОстаткиНоменклатуры.Записывать = Истина; Пока ВыборкаДетальныеЗаписи.Следующий() И НеобходимоСписать > 0 Цикл Если ВыборкаДетальныеЗаписи.СПартии <> NULL Тогда СписатьСПартии = Мин(ВыборкаДетальныеЗаписи.КоличествоОстаток, ВыборкаДетальныеЗаписи.Количество); Движение = Движения.ОстаткиНоменклатуры.Добавить(); Движение.ВидДвижения = ВидДвиженияНакопления.Расход; Движение.Период = Дата; Движение.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура; Движение.Количество = СписатьСПартии; Движение.Партия = ВыборкаДетальныеЗаписи.Партия; Движение.Сумма = (ВыборкаДетальныеЗаписи.СуммаОстаток/ВыборкаДетальныеЗаписи.КоличествоОстаток) * СписатьСПартии; Себистоимость = Себистоимость + (ВыборкаДетальныеЗаписи.СуммаОстаток/ВыборкаДетальныеЗаписи.КоличествоОстаток) * СписатьСПартии; НеобходимоСписать = НеобходимоСписать - СписатьСПартии; Если ВыборкаДетальныеЗаписи.КоличествоОстаток < ВыборкаДетальныеЗаписи.Количество Тогда Сообщить("С партии "+ВыборкаДетальныеЗаписи.СПартии+" было списано "+ВыборкаДетальныеЗаписи.Номенклатура +" в количестве "+СписатьСПартии +". Остальное количество было списано по методу "+МетодСписания); КонецЕсли; Иначе СписатьСПартии = Мин(ВыборкаДетальныеЗаписи.КоличествоОстаток, НеобходимоСписать); Движение = Движения.ОстаткиНоменклатуры.Добавить(); Движение.ВидДвижения = ВидДвиженияНакопления.Расход; Движение.Период = Дата; Движение.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура; Движение.Количество = СписатьСПартии; Движение.Партия = ВыборкаДетальныеЗаписи.Партия; Движение.Сумма = (ВыборкаДетальныеЗаписи.СуммаОстаток/ВыборкаДетальныеЗаписи.КоличествоОстаток) * СписатьСПартии; Себистоимость = Себистоимость + (ВыборкаДетальныеЗаписи.СуммаОстаток/ВыборкаДетальныеЗаписи.КоличествоОстаток) * СписатьСПартии; НеобходимоСписать = НеобходимоСписать - СписатьСПартии; КонецЕсли; КонецЦикла; Пока ВыборкаДетальныеЗаписи.Следующий() И НеобходимоСписать > 0 Цикл СписатьСПартии = Мин(ВыборкаДетальныеЗаписи.КоличествоОстаток, НеобходимоСписать); Движение = Движения.ОстаткиНоменклатуры.Добавить(); Движение.ВидДвижения = ВидДвиженияНакопления.Расход; Движение.Период = Дата; Движение.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура; Движение.Количество = СписатьСПартии; Движение.Партия = ВыборкаДетальныеЗаписи.Партия; Движение.Сумма = (ВыборкаДетальныеЗаписи.СуммаОстаток/ВыборкаДетальныеЗаписи.КоличествоОстаток) * СписатьСПартии; Себистоимость = Себистоимость + (ВыборкаДетальныеЗаписи.СуммаОстаток/ВыборкаДетальныеЗаписи.КоличествоОстаток) * СписатьСПартии; НеобходимоСписать = НеобходимоСписать - СписатьСПартии; КонецЦикла; КонецЕсли; Движения.Продажи.Записывать = Истина; Движение = Движения.Продажи.Добавить(); Движение.Период = Дата; Движение.Номенклатура = ВыборкаНоменклатура.Номенклатура; Движение.Количество = ВыборкаНоменклатура.Количество; Движение.Сумма = ВыборкаНоменклатура.Сумма; Движение.Себистоимость = Себистоимость; КонецЦикла; |
|||
9
Tolstiy Beremenniy
21.12.18
✎
08:47
|
Мало знакомая всем задача?
Нет однозначного решения?? |
|||
10
xXeNoNx
21.12.18
✎
08:54
|
купи ты уже курс подготовки к спецу, не мучайся...
|
|||
11
xXeNoNx
21.12.18
✎
09:01
|
(9)по фифо/лифо у тебя порядок сортировки один - момент времени документа, а надо что бы было 2: момент времени и приоритет, сначала сортируешь по приоритету, потом по моменту.
СЕБЕСТОИМОСТЬ пишется через букуву 'Е' |
|||
12
Tolstiy Beremenniy
21.12.18
✎
09:01
|
вот этот запрос какую то чушь выдает ((((
ВЫБРАТЬ ПеремещениеТоваровСписокНоменклатуры.Номенклатура КАК Номенклатура, СУММА(ПеремещениеТоваровСписокНоменклатуры.Количество) КАК Количество, СУММА(ПеремещениеТоваровСписокНоменклатуры.Цена) КАК Цена, ПеремещениеТоваровСписокНоменклатуры.Партия КАК СПартии ПОМЕСТИТЬ ДокТЧ ИЗ Документ.ПеремещениеТоваров.СписокНоменклатуры КАК ПеремещениеТоваровСписокНоменклатуры ГДЕ ПеремещениеТоваровСписокНоменклатуры.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО ПеремещениеТоваровСписокНоменклатуры.Номенклатура, ПеремещениеТоваровСписокНоменклатуры.Партия ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПродуктыНаСкладахОстатки.Номенклатура КАК Номенклатура, ЕСТЬNULL(ДокТЧ.Количество, 0) КАК Количество, ЕСТЬNULL(ДокТЧ.Цена, 0) КАК Цена, ДокТЧ.СПартии КАК СПартии, ЕСТЬNULL(ПродуктыНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток, ЕСТЬNULL(ПродуктыНаСкладахОстатки.ЦенаОстаток, 0) КАК ЦенаОстаток, ПродуктыНаСкладахОстатки.Партия КАК Партия ИЗ ДокТЧ КАК ДокТЧ ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ПродуктыНаСкладах.Остатки( &МоментВремени, Номенклатура В (ВЫБРАТЬ ДокТЧ.Номенклатура ИЗ ДокТЧ КАК ДокТЧ)) КАК ПродуктыНаСкладахОстатки ПО ДокТЧ.Номенклатура = ПродуктыНаСкладахОстатки.Номенклатура И ДокТЧ.СПартии = ПродуктыНаСкладахОстатки.Партия УПОРЯДОЧИТЬ ПО СПартии УБЫВ, ПродуктыНаСкладахОстатки.Партия |
|||
13
Tolstiy Beremenniy
21.12.18
✎
09:02
|
(10) Есть у меня он. Мне нужно задачу решить а не курс смотреть!
|
|||
14
Tolstiy Beremenniy
21.12.18
✎
09:03
|
(11) У меня списание должно идти по партии что выбрана в строке документа. Или по FIFO. Ничего другого.
|
|||
15
xXeNoNx
21.12.18
✎
09:03
|
(13) пацанам лучше знать что нужнее!
|
|||
16
xXeNoNx
21.12.18
✎
09:06
|
(12) в корне не верное решение, зачем полное соединение, зачем соединение по партии?
|
|||
17
xXeNoNx
21.12.18
✎
09:07
|
(12) индексировать кто будет? для данного экзамена оно ой как нужно
|
|||
18
Tolstiy Beremenniy
21.12.18
✎
09:07
|
(16) Взял из примера задачи 1_04. не сам же делал.
Я не соображаю. |
|||
19
Tolstiy Beremenniy
21.12.18
✎
09:08
|
(17) Что там индексировать, если не верное решение.
Я ищу пример, который можно использовать!!!!! |
|||
20
xXeNoNx
21.12.18
✎
09:10
|
(19) индексировать выборку из документа...
Примера нет |
|||
21
Tolstiy Beremenniy
21.12.18
✎
09:12
|
(20) Задача известная а примера нет, это как?
|
|||
22
xXeNoNx
21.12.18
✎
09:15
|
(21) бывает, нужно смириться и искать другие подходы к решению задачи..
|
|||
23
xXeNoNx
21.12.18
✎
09:19
|
Пойдешь ты работать, скажут тебе: а напиши учет хряков на свиноферме в килограммах.
Примера нет... Что будешь делать? |
|||
24
Tolstiy Beremenniy
21.12.18
✎
09:19
|
(22) С чем смириться?
Какие решения искать? У меня одно решение в голове есть. Перебирать табличную часть документа при проведении. И смотреть, заполнена ли партия в строке. Если да, то списывать с неё. Если не хватает, контроль остатков! Если хватает списывать и идти к следующей строке. Если партия не заполнена, то списание этой номенклатуры по FIFO. Так можно? Тут хоть понятно как делать. относительно. |
|||
25
xXeNoNx
21.12.18
✎
09:23
|
(24) причем тут решение, ты о примерах писал.., не путай!
Очень плохое решение... Я тебе дал уже подсказку выше как решить... |
|||
26
Tolstiy Beremenniy
21.12.18
✎
09:26
|
(25) В (11) подсказка?
|
|||
27
Tolstiy Beremenniy
21.12.18
✎
09:27
|
(25) То есть можно использовать, не сложный запрос
главное отсортировать правильно? |
|||
28
xXeNoNx
21.12.18
✎
09:28
|
Еще раз, в дополнение к (11): тебе нужно получить набор данных отсортированных нужным способом, в данном задании по двум измерениям, по приоритетуСписания(в твоем случае это показатель есть ли партия в ТЧ дока) и по моменту времени партии(в зависимости фифо у тебя или лифо)
И не благодари.. |
|||
29
xXeNoNx
21.12.18
✎
09:29
|
далее стандартный механизЬм списания по партиям
|
|||
30
Tolstiy Beremenniy
21.12.18
✎
09:37
|
(29) Попробовал вот так начать.
Но что то по строкам где не указана партия, по две партии везде, вроде на остатках есть и ещё. А по этим двум и не спишется. Можете что подсказать по этому поводу? Про сортировку вроде понял, отсортировал. ВЫБРАТЬ ПеремещениеТоваровСписокНоменклатуры.Номенклатура КАК Номенклатура, ПеремещениеТоваровСписокНоменклатуры.Партия КАК Партия, МАКСИМУМ(ПеремещениеТоваровСписокНоменклатуры.Цена) КАК Цена, МАКСИМУМ(ПеремещениеТоваровСписокНоменклатуры.Количество) КАК Количество ПОМЕСТИТЬ ВТ_ДокТч ИЗ Документ.ПеремещениеТоваров.СписокНоменклатуры КАК ПеремещениеТоваровСписокНоменклатуры ГДЕ ПеремещениеТоваровСписокНоменклатуры.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО ПеремещениеТоваровСписокНоменклатуры.Номенклатура, ПеремещениеТоваровСписокНоменклатуры.Партия ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПродуктыНаСкладахОстатки.Номенклатура КАК Номенклатура, ВТ_ДокТч.Количество КАК Количество, ВТ_ДокТч.Партия КАК ДокПартия, ПродуктыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток, ПродуктыНаСкладахОстатки.ЦенаОстаток КАК ЦенаОстаток, ПродуктыНаСкладахОстатки.Партия КАК Партия ИЗ ВТ_ДокТч КАК ВТ_ДокТч ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПродуктыНаСкладах.Остатки( &Период, Номенклатура В (ВЫБРАТЬ ВТ_ДокТч.Номенклатура ИЗ ВТ_ДокТч КАК ВТ_ДокТч) И Партия В (ВЫБРАТЬ ВТ_ДокТч.Партия ИЗ ВТ_ДокТч КАК ВТ_ДокТч) И Склад = &СкладИсточник) КАК ПродуктыНаСкладахОстатки ПО ВТ_ДокТч.Номенклатура = ПродуктыНаСкладахОстатки.Номенклатура УПОРЯДОЧИТЬ ПО ВТ_ДокТч.Партия, ВТ_ДокТч.Номенклатура.Наименование |
|||
31
Tolstiy Beremenniy
21.12.18
✎
09:40
|
Как бы остальные партии то включить в выборку????
|
|||
32
Tolstiy Beremenniy
21.12.18
✎
09:44
|
Пока решение (24) только более менее усваивается.
не правильное с точки зрения постановки оптимального решения. Но зато так же рабочее. Можно и его наверное применить. Главное что бы выдавало результат. |
|||
33
Tolstiy Beremenniy
21.12.18
✎
09:56
|
Может решение (5) разобрать, вроде начинаю вникать в него,
как это сделать. |
|||
34
Tolstiy Beremenniy
21.12.18
✎
10:06
|
(5) Вот что получилось, -
ВЫБРАТЬ ПеремещениеТоваровСписокНоменклатуры.Номенклатура, СУММА(ПеремещениеТоваровСписокНоменклатуры.Количество) КАК Количество, ПеремещениеТоваровСписокНоменклатуры.Партия ПОМЕСТИТЬ ВТ_ДокТч ИЗ Документ.ПеремещениеТоваров.СписокНоменклатуры КАК ПеремещениеТоваровСписокНоменклатуры ГДЕ ПеремещениеТоваровСписокНоменклатуры.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО ПеремещениеТоваровСписокНоменклатуры.Номенклатура, ПеремещениеТоваровСписокНоменклатуры.Партия ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПродуктыНаСкладахОстатки.Номенклатура, ПродуктыНаСкладахОстатки.КоличествоОстаток, ПродуктыНаСкладахОстатки.Партия ПОМЕСТИТЬ ВТ_ОстаткиПартий ИЗ РегистрНакопления.ПродуктыНаСкладах.Остатки КАК ПродуктыНаСкладахОстатки ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ДокТч.Номенклатура КАК НоменклатураИзДокумента, ВТ_ДокТч.Количество КАК КоличествоИзДокумента, ВТ_ДокТч.Партия КАК ПартияИзДокумента, ВТ_ОстаткиПартий.Номенклатура КАК НоменклатураОстатков, ВТ_ОстаткиПартий.КоличествоОстаток, ВТ_ОстаткиПартий.Партия КАК ПартияОстатков, ВЫБОР КОГДА ВТ_ДокТч.Партия = ВТ_ОстаткиПартий.Партия ТОГДА 1 ИНАЧЕ 2 КОНЕЦ КАК ПорядокСписания ИЗ ВТ_ДокТч КАК ВТ_ДокТч ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ОстаткиПартий КАК ВТ_ОстаткиПартий ПО ВТ_ДокТч.Номенклатура = ВТ_ОстаткиПартий.Номенклатура На сколько это верно? Что поправить? |
|||
35
xXeNoNx
21.12.18
✎
10:17
|
(30)
ВТ_ДокТч: 1. Какая цена в перемещении - выкинуть 2. Почему МАКСИМУМ по количеству? Что такое: ПродуктыНаСкладахОстатки.ЦенаОстаток? Зачем: И Партия В (ВЫБРАТЬ ВТ_ДокТч.Партия ИЗ ВТ_ДокТч КАК ВТ_ДокТч)? (32) пробовал через голову труселя одевать.., оно ведь как..., тоже в принципе возможно "Главное что бы выдавало результат." - мля..., больше не буду подсказывать..., приди на экзамен и скажи: Вы все ничего не понимаете.., главное результат. прощевай! |
|||
36
Tolstiy Beremenniy
21.12.18
✎
10:18
|
Как вам такой запрос???
ВЫБРАТЬ ПеремещениеТоваровСписокНоменклатуры.Номенклатура, СУММА(ПеремещениеТоваровСписокНоменклатуры.Количество) КАК Количество, ПеремещениеТоваровСписокНоменклатуры.Партия ПОМЕСТИТЬ ВТ_ДокТч ИЗ Документ.ПеремещениеТоваров.СписокНоменклатуры КАК ПеремещениеТоваровСписокНоменклатуры ГДЕ ПеремещениеТоваровСписокНоменклатуры.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО ПеремещениеТоваровСписокНоменклатуры.Номенклатура, ПеремещениеТоваровСписокНоменклатуры.Партия ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПродуктыНаСкладахОстатки.Номенклатура, ПродуктыНаСкладахОстатки.КоличествоОстаток, ПродуктыНаСкладахОстатки.Партия ПОМЕСТИТЬ ВТ_ОстаткиПартий ИЗ РегистрНакопления.ПродуктыНаСкладах.Остатки КАК ПродуктыНаСкладахОстатки ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ДокТч.Номенклатура КАК НоменклатураИзДокумента, ВТ_ДокТч.Количество КАК КоличествоИзДокумента, ВТ_ДокТч.Партия КАК ПартияИзДокумента, ВТ_ОстаткиПартий.Номенклатура КАК НоменклатураОстатков, ВТ_ОстаткиПартий.КоличествоОстаток, ВТ_ОстаткиПартий.Партия КАК ПартияОстатков, ВЫБОР КОГДА ВТ_ДокТч.Партия = ВТ_ОстаткиПартий.Партия ТОГДА 1 ИНАЧЕ 2 КОНЕЦ КАК ПорядокСписания, ВТ_ОстаткиПартий.Партия.МоментВремени КАК ПартияМоментВремени ИЗ ВТ_ДокТч КАК ВТ_ДокТч ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ОстаткиПартий КАК ВТ_ОстаткиПартий ПО ВТ_ДокТч.Номенклатура = ВТ_ОстаткиПартий.Номенклатура УПОРЯДОЧИТЬ ПО ВТ_ДокТч.Номенклатура.Наименование, ПорядокСписания, ПартияМоментВремени http://joxi.ru/E2pjgl1i9QKNar |
|||
37
Tolstiy Beremenniy
21.12.18
✎
10:20
|
(35) Да это чей то пример.
Я его лишь правил. Сильно не вникал, надеялся на его результат! Ну если я не понимаю как правильно сделать, значит можно сделать что бы работало. И ограничиться на этом пока. А пойму как правильно потом исправить можно со временем! |
|||
38
Tolstiy Beremenniy
21.12.18
✎
10:23
|
(36) Вроде как это можно запустить попробовать!
делал по описанию (5). |
|||
39
Tolstiy Beremenniy
21.12.18
✎
10:28
|
(36+) Кое где только в ПартияОстатков появляются пустые
партии с минусовыми значениями. Ну это наверное в регистре уже что то введено. при переборе наверное можно фильтровать их. |
|||
40
Tolstiy Beremenniy
21.12.18
✎
10:57
|
Все криво что то идет!!! Подскажет кто, нет?
|
|||
41
Tolstiy Beremenniy
21.12.18
✎
11:20
|
Up1
|
|||
42
Tolstiy Beremenniy
21.12.18
✎
11:28
|
Подскажите пожалуйста, как вот это правильно сгруппировать
что бы перебором сделать партионное спивание???? У меня самого чт ото не получается? Что там нужно изменить? ВЫБРАТЬ ПеремещениеТоваровСписокНоменклатуры.Номенклатура, СУММА(ПеремещениеТоваровСписокНоменклатуры.Количество) КАК Количество, ПеремещениеТоваровСписокНоменклатуры.Партия ПОМЕСТИТЬ ВТ_ДокТч ИЗ Документ.ПеремещениеТоваров.СписокНоменклатуры КАК ПеремещениеТоваровСписокНоменклатуры ГДЕ ПеремещениеТоваровСписокНоменклатуры.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО ПеремещениеТоваровСписокНоменклатуры.Номенклатура, ПеремещениеТоваровСписокНоменклатуры.Партия ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ПродуктыНаСкладахОстатки.Номенклатура, ЕСТЬNULL(ПродуктыНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток, ПродуктыНаСкладахОстатки.Партия ПОМЕСТИТЬ ВТ_ОстаткиПартий ИЗ РегистрНакопления.ПродуктыНаСкладах.Остатки( &Период, Номенклатура В (ВЫБРАТЬ ВТ_ДокТч.Номенклатура ИЗ ВТ_ДокТч КАК ВТ_ДокТч) И Склад = &СкладИсточник) КАК ПродуктыНаСкладахОстатки ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ОстаткиПартий.Номенклатура КАК НоменклатураОстатков, ВТ_ДокТч.Партия КАК ПартияИзДокумента, ВТ_ДокТч.Количество КАК КоличествоИзДокумента, ВТ_ОстаткиПартий.КоличествоОстаток КАК КоличествоОстаток ИЗ ВТ_ДокТч КАК ВТ_ДокТч ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ОстаткиПартий КАК ВТ_ОстаткиПартий ПО ВТ_ДокТч.Номенклатура = ВТ_ОстаткиПартий.Номенклатура УПОРЯДОЧИТЬ ПО ВТ_ДокТч.Номенклатура.Наименование ИТОГИ МАКСИМУМ(КоличествоИзДокумента), СУММА(КоличествоОстаток) ПО НоменклатураОстатков, ПартияИзДокумента |
|||
43
Tolstiy Beremenniy
21.12.18
✎
11:45
|
Что никто не подскажет что ли???????
Исходя из того что у меня есть!!!!! |
|||
44
Tolstiy Beremenniy
21.12.18
✎
12:04
|
Подсказок не будет что ли?
|
|||
45
Tolstiy Beremenniy
21.12.18
✎
12:09
|
помогите я застрял!
|
|||
46
Tolstiy Beremenniy
21.12.18
✎
12:17
|
Ну хоть намеки!!!!! я что то из того что есть ничего не вывел!1!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |