8,3 УТП на неуправляемых формах.
Добрый день. Требуется открывать форму документа по очереди. Суть- открывается один документ и пока юзер не закроет его руками , второй не открывается и так до конца выборки. Вот что имеется на эту тему ( в качестве примера на 10 доков), но у меня открывается только первый док и все, дальше как будто все останавливается.
&НаКлиенте
Процедура Старт(Команда)
МассивСсылок = ПолучитьМассивСсылокНаДокументы();
Если МассивСсылок.Количество() = 0 Тогда
Возврат;
КонецЕсли;
ДополнительныеПараметры = Новый Структура("МассивСсылок", МассивСсылок);
ПараметрыФормы = Новый Структура("Ключ", МассивСсылок[0]);
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияДокумента", ЭтаФорма, ДополнительныеПараметры);
ОткрытьФорму("Документ.РеализацияТоваровУслуг.ФормаОбъекта", ПараметрыФормы,,,,,ОписаниеОповещения);
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗакрытияДокумента(Результат, ДопПараметры) Экспорт
ДопПараметры.МассивСсылок.Удалить(0);
Если ДопПараметры.МассивСсылок.Количество() = 0 Тогда
Возврат;
КонецЕсли;
ПараметрыФормы = Новый Структура("Ключ", ДопПараметры.МассивСсылок[0]);
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияДокумента", ЭтаФорма, ДопПараметры);
ОткрытьФорму("Документ.РеализацияТоваровУслуг.ФормаОбъекта", ПараметрыФормы,,,,,ОписаниеОповещения);
КонецПроцедуры
&НаСервере
Функция ПолучитьМассивСсылокНаДокументы()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 10
| РеализацияТоваровУслуг.Ссылка КАК Ссылка
|ИЗ
| Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг";
Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
КонецФункции // ПолучитьМассивСсылокНаДокументы()
Добрый день. Требуется открывать форму документа по очереди. Суть- открывается один документ и пока юзер не закроет его руками , второй не открывается и так до конца выборки. Вот что имеется на эту тему ( в качестве примера на 10 доков), но у меня открывается только первый док и все, дальше как будто все останавливается.
&НаКлиенте
Процедура Старт(Команда)
МассивСсылок = ПолучитьМассивСсылокНаДокументы();
Если МассивСсылок.Количество() = 0 Тогда
Возврат;
КонецЕсли;
ДополнительныеПараметры = Новый Структура("МассивСсылок", МассивСсылок);
ПараметрыФормы = Новый Структура("Ключ", МассивСсылок[0]);
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияДокумента", ЭтаФорма, ДополнительныеПараметры);
ОткрытьФорму("Документ.РеализацияТоваровУслуг.ФормаОбъекта", ПараметрыФормы,,,,,ОписаниеОповещения);
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗакрытияДокумента(Результат, ДопПараметры) Экспорт
ДопПараметры.МассивСсылок.Удалить(0);
Если ДопПараметры.МассивСсылок.Количество() = 0 Тогда
Возврат;
КонецЕсли;
ПараметрыФормы = Новый Структура("Ключ", ДопПараметры.МассивСсылок[0]);
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияДокумента", ЭтаФорма, ДопПараметры);
ОткрытьФорму("Документ.РеализацияТоваровУслуг.ФормаОбъекта", ПараметрыФормы,,,,,ОписаниеОповещения);
КонецПроцедуры
&НаСервере
Функция ПолучитьМассивСсылокНаДокументы()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 10
| РеализацияТоваровУслуг.Ссылка КАК Ссылка
|ИЗ
| Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг";
Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
КонецФункции // ПолучитьМассивСсылокНаДокументы()
По теме из базы знаний
- Использование штрихкодов товаров в работе склада
- Разработка и сценарное тестирование с Vanessa-ADD. Практические примеры сценариев. Шаги встроенной библиотеки
- Как вывести итоговый вес и объем на форму документа Заказ клиента. УТ 11.4
- Отправка списка штрих-кодов в документы маркировки. БП, Fresh
- Импорт лицевых счетов из документа "Заявка на открытие лицевых счетов"
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
После закрытия ничего не происходит в том то и дело.
ЭтотОбъект не проходит - Ошибка при вызове конструктора (ОписаниеОповещения)
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияДокумента", ЭтотОбъект, ДополнительныеПараметры);
по причине:
Не найден экспортируемый метод: ПослеЗакрытияДокумента
ЭтотОбъект не проходит - Ошибка при вызове конструктора (ОписаниеОповещения)
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияДокумента", ЭтотОбъект, ДополнительныеПараметры);
по причине:
Не найден экспортируемый метод: ПослеЗакрытияДокумента
можно такой вариант использовать
1.получили массив документов и открыли форму с первым документом
затем подключаете обрабтчикожидания с интервалом 5 секунд
в нем
1.получаете форму для ссылки Массив[0]
2.проверяете Если ФормаДок.Открыта() Тогда Выход из обработчика
3.Иначе удаляете из массива ссылку по [0] получаете и открываете форму для следующего элемента
выходите
и в начале обработчика вставить проверку если Массив = 0 то остановить обработчикОжидания
т.е. каждые 5 секунд производится проверка наличия открытой формы из массива[0]
и если пользователь уже закрыл форму, то ему откроется следующая,
и так пока не завершится весь массив
1.получили массив документов и открыли форму с первым документом
затем подключаете обрабтчикожидания с интервалом 5 секунд
в нем
1.получаете форму для ссылки Массив[0]
2.проверяете Если ФормаДок.Открыта() Тогда Выход из обработчика
3.Иначе удаляете из массива ссылку по [0] получаете и открываете форму для следующего элемента
выходите
и в начале обработчика вставить проверку если Массив = 0 то остановить обработчикОжидания
т.е. каждые 5 секунд производится проверка наличия открытой формы из массива[0]
и если пользователь уже закрыл форму, то ему откроется следующая,
и так пока не завершится весь массив
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот