Имя: Пароль:
1C
1С v8
Сравнить две ТЗ и найти соответствия.
,
0 Rks_1C
 
22.07.24
15:58
Добрый день. Есть регистр накопления с оборудованием отгруженным во временное пользование. Есть документ, по которому это оборудование возвращается.
Задача: проверять номенклатуру и контрагента (У одного контрагента бывает по несколько филиалов) в документе возврата, чтобы возвращаемое оборудование совпадало с отгруженным и поступало именно от того, кому отгружали.
Проблема: Не учел ситуацию, когда возвращаемого оборудования меньше, чем отгруженного (клиент взял 3 холодильника, 1 оказался не нужен, а 2 пригодились).
Дано: Есть 2 таблицы значений: первая - из регистра накопления с данными по всему отгруженному оборудованию на данного контрагента, вторая - из документа, который создается для возврата оборудования (отсюда берутся контрагент при заполнении и номенклатура оборудования при заполнении).
Вопрос: Как сравнить таблицу значений из документа с таблицей значений из регистра, таким образом, чтобы найти соответствия пропустив все остальные записи. Колонки в обеих ТЗ приведены к одному формату: Партнер|Номенклатура.
1 Мультук
 
гуру
22.07.24
16:02
(0)

Написать правильный запрос?
Можно сразу.

Можно загрузив обе таблицы во временные.

Нюанс, нужно знать SQL и чуть-чуть его 1С реинкарнацию.

Гугл: 1С Язык Запросов
Гугл: Е. Ю. Хрусталева. Язык запросов «1С:Предприятия 8
2 lEvGl
 
гуру
22.07.24
16:05
(0) ну да, смысл то в чем?
тупо ответ на вопрос как задан - соединением, как же еще
3 Garykom
 
гуру
22.07.24
16:08
(0) осень слозный задася, программист нужен однако
опытный однако
количество забыл однако
купили раз и много штука однако
а возвращали не один раз и мало штук однако
слозно сравнивать однако
4 Ногаминебить
 
22.07.24
16:13
Надо чтобы было так:
Документ возврата делает движение по этому регистру и если остатка не хватило - тупо не проводится ругаясь при этом матерно.
Тогда и отчет не нужен никакой. :)
ЗЫ:
Хотя может не вчитался, пропустил что-то.
5 lEvGl
 
гуру
22.07.24
16:18
(4) да, но

Проблема: Не учел ситуацию, когда возвращаемого оборудования меньше, чем отгруженного (клиент взял 3 холодильника, 1 оказался не нужен, а 2 пригодились).

как проверка остатка решает эту проблему?! это ж.. это же.. это те.. тенеменьже же жь!
7 Кондер
 
22.07.24
16:36
Две тЗ в Запрос и внутренние соединение
8 Rks_1C
 
23.07.24
06:13
(1) Спасибо, поинтересуюсь. (2) (7) пробовал по-всякому соединять их, видимо в синтаксисе не разобрался, чет ерунда получалась какая-то. Спасибо, пошел вертеть.
10 Rks_1C
 
23.07.24
08:40
(2) (7) Взлетело, благодарю. Одним запросом, внутреннее соединение, свернуть (убираю дубли), далее результат в Таблицу Значений. Сравниваю через коллекции идентичны ТЗ(документ возвращения) и ТЗ (итоговая). Если равны, то оборудование раннее отгружалось, если не равно, ошиблись при заполнении документа.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан