Внешняя обработка между базой данной SQL и 1С 10.3 УТ. как изменить модуль этой кнопки
есть готовая внешняя обработка между базой данной SQL программы Сервера Терминалов( это база SQL) и 1С 10.3 УТ
в этой 1С обработке во вкладке Загрузка - по по нажатию кнопки Запустить: в 1С 10.3 УТ загружаются все транзакции со всех весов с дальнейшим формированием документов в 1С (перемещение, поступление товаров, отпуск товаров, реализация товаров, инвентаризация)
А как изменить модуль этой кнопки таким образом, чтобы получать транзакции только с тех весов, Id которых я напишу в поле ввода. В форме обработки Поле Ввода числовое я создал, но пока не определился с событием этого поля. Создал Кнопку КнПолучитьТранзакции и пока у этой кнопки модуль тот же, что у кнопки для получения всех транзакций со всех подряд весов.
Как привязать поле ввода к запросу в этой процедуре?
Вот процедура начинается так:
Процедура ЗагрузкаТранзакций()
//Обратимся к базе
ТекстЗапросаОператоры="sel ect id, name fr om tb_operator where (mark_deleted=0 and id>0)";
ТекстЗапроса="select * fr om tb_transaction wh ere (mark_deleted=0 and id>0 and id_sync='')";
Попытка
в этой 1С обработке во вкладке Загрузка - по по нажатию кнопки Запустить: в 1С 10.3 УТ загружаются все транзакции со всех весов с дальнейшим формированием документов в 1С (перемещение, поступление товаров, отпуск товаров, реализация товаров, инвентаризация)
А как изменить модуль этой кнопки таким образом, чтобы получать транзакции только с тех весов, Id которых я напишу в поле ввода. В форме обработки Поле Ввода числовое я создал, но пока не определился с событием этого поля. Создал Кнопку КнПолучитьТранзакции и пока у этой кнопки модуль тот же, что у кнопки для получения всех транзакций со всех подряд весов.
Как привязать поле ввода к запросу в этой процедуре?
Вот процедура начинается так:
Процедура ЗагрузкаТранзакций()
//Обратимся к базе
ТекстЗапросаОператоры="sel ect id, name fr om tb_operator where (mark_deleted=0 and id>0)";
ТекстЗапроса="select * fr om tb_transaction wh ere (mark_deleted=0 and id>0 and id_sync='')";
Попытка
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
В запросе есть id весов? Если да, это просто.
На форме создаем поле id весов.
и немного меняем запрос. Никакие дополнительные кнопки в обработке создавать не нужно.
должно получиться примерно так:
where idvesov = " + ПолеФормыIDвесов + " продолжение запроса ";
На форме создаем поле id весов.
и немного меняем запрос. Никакие дополнительные кнопки в обработке создавать не нужно.
должно получиться примерно так:
where idvesov = " + ПолеФормыIDвесов + " продолжение запроса ";
я вот так запрос делал:
ТекстЗапроса="sel ect * fr om tb_transaction where (mark_deleted=0 and id>0 and Device_id="+ЭлементыФормы.idves.Значение+" and id_sync='')";
// где idves - это имя поля ввода. у него тип значения - число; Данные - пусто оставил; События при изменении - тоже пусто оставил.
И та же ошибка осталась
ТекстЗапроса="sel ect * fr om tb_transaction where (mark_deleted=0 and id>0 and Device_id="+ЭлементыФормы.idves.Значение+" and id_sync='')";
// где idves - это имя поля ввода. у него тип значения - число; Данные - пусто оставил; События при изменении - тоже пусто оставил.
И та же ошибка осталась
Сделал потом так:
ТекстЗапроса="sel ect * fr om tb_transaction where Device_Id = " + ПолеФормы.idves + " and mark_deleted=0 and id>0 ";
Призакрытии в конфигураторе выходит ошибка:
{ВнешняяОбработка.МассаК.Форма.Форма.Форма(6927,68)}: Переменная не определена (ПолеФормы)
ТекстЗапроса="select * fr om tb_transaction wh ere Device_Id = " + <<?>>ПолеФормы.idves + " and mark_deleted=0 and id>0 "; (Проверка: Толстый клиент (обычное приложение))
ТекстЗапроса="sel ect * fr om tb_transaction where Device_Id = " + ПолеФормы.idves + " and mark_deleted=0 and id>0 ";
Призакрытии в конфигураторе выходит ошибка:
{ВнешняяОбработка.МассаК.Форма.Форма.Форма(6927,68)}: Переменная не определена (ПолеФормы)
ТекстЗапроса="select * fr om tb_transaction wh ere Device_Id = " + <<?>>ПолеФормы.idves + " and mark_deleted=0 and id>0 "; (Проверка: Толстый клиент (обычное приложение))
ТекстЗапроса="sel ect * fr om tb_transaction where (mark_deleted=0 and Device_Id='"+ЭлементыФормы.idves.Значение+"' and id_sync='' and id>0)"
Выходит ошибка "В данный момент транзакции заняты другим приложением. Попробуйте повторить попытку позже"
Выходит ошибка "В данный момент транзакции заняты другим приложением. Попробуйте повторить попытку позже"
(6)
Ну а вот это похоже, что
"' and id_sync='' and id>0)"
вот тут непонятно поле "id" - это номер весов? Зачем тогда это условие, Вы же изначально '"+ЭлементыФормы.idves.Значение+"'
ИД поставили.
Ну а вот это похоже, что
Попробуйте повторить попытку позже
либо драйвер занят, либо запрос всё таки не корректен.
Внимание! Тема сдана в архив
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот