Имя: Пароль:
1C
1С v8
Помогите реализовать логику
0 brenli
 
23.09.16
08:37
В контексте сервера выполняется процедура по созданию документов, и идет поиск контрагентов в справочнике.
Есть условие - Если контрагент найден но ИНН у него отсутствует или отличается от ИНН в файле данных, нужно выдать вопрос о замене ИНН.
Если да, то меняем и записываем элемент справочника Контрагенты, иначе ругаемся и не создаем документ с этим контрагентом.
Далее..
Условие : Если контрагент вообще не найден, нужно выдать вопрос "Создать контрагента?"
Если Да Тогда
Создаем
Иначе
Пропускам этот документ.

Все вроде бы просто, но как быть с оператором Вопрос?
Он не работает на Сервере.
С каждым контрагентом который удовлетворил условия на несовпадение или отсутствие делать Возврат на клиента, обрабатывать вопрос и снова на сервер?  Но в точку выхода ведь не вернуться и придется лопатить все сначала?
Какой выход есть?
1 Остап Сулейманович
 
23.09.16
08:44
(0) Выход очень прост. Сделать на сервере все проверки. Результат отдать клиенту. На клиенте спросить за все нескладушки. Отдать все назад серверу для обработки.
Не по каждой строчке файла. А по всему. Сразу.
2 brenli
 
23.09.16
09:00
(1) спасибо
3 brenli
 
23.09.16
09:07
(1) Только вот отдать снова серверу - это по новой запускать процедуру, т.е она начнет шарашить весь список вновь. Или еще создавать таблицу с документами которые уже созданы и при запуске серверной процедуры сверяться с этой таблицей. Если он уже создан то пропускаем
4 Vladal
 
23.09.16
09:42
(3) Если задавать вопрос только про строки для принятия решений. то и передавать массив ответов решений, и выбирать уже только те объекты, по которым приняты решения.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан