|
![]() |
#1 |
Administrator
|
Цитата:
Сообщение от Гений 1С
Когда заказ делается активным/проведенным?
Можно ли это сделать в аксапте SQL-подобным запросом UPDATE Set active=true WHERE Sales_id=..., т.е. привязан ли триггер к таблице SalesTable или же обращение идет через некоторый класс типа Record, т.е.: Да, в X++ есть SQL-подобные конструкции аналогично 1С 8.0 - но это неполноценный SQL (как в 8.0) - а его некоторый кусочек (большей частью SELECT). И это не врезка языка SQL - а именно SQL-подобные конструкции. В тех ссылках которые я приводил - там есть код обновления данных в таблицах. Просто в отличии от 1С - в Аксе есть понятие - табличная переменная - содержащая в себе текущий курсор. У заказа есть ряд статусов (поле статус). Каждое значение статуса - соответствует некоторому состоянию заказа, в котором генерятся некоторые записи в различных табличках. Разнесенный заказ - также имеет свой статус. За разноску отвечает пачка классов, которая все и делает. Разносится заказ по кнопке Разноска ![]() Интересно - какая каша сложилась об Аксапте в результате этого флейма ![]()
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 06.05.2006 в 14:41. |
|
![]() |
#2 |
Участник
|
Цитата:
Сообщение от sukhanchik
В Аксапте таблица является объектом - как класс. У таблицы есть свои методы. В т.ч. у таблицы есть методы update, insert, delete, которые обновляют данные. Экземпляр класса=записи в таблице.
Предположим простейшая задача - пишу обработку, которая в заказе увеличит цену на 10%, но только по одному конкретному указанному контрагенту ![]() Значит верно ли я думаю, что в аксапте получаем некий курсор из таблицы Sales_Talbe, где содерждатся заказы по контрагенту, затем получаем одним запросом все строчки, принадлежащие этим таблицам или, наоборот, перебираем по одному заказу и получаем для него все строчки, ну и далее изменяем цену. Ну и соответственно после завершения вызов метода update у выборки строк. Пока я правильно иду? ![]() |
|
![]() |
#3 |
Administrator
|
Цитата:
Сообщение от Гений 1С
Предположим простейшая задача - пишу обработку, которая в заказе увеличит цену на 10%, но только по одному конкретному указанному контрагенту
![]() Значит верно ли я думаю, что в аксапте получаем некий курсор из таблицы Sales_Talbe, где содерждатся заказы по контрагенту, затем получаем одним запросом все строчки, принадлежащие этим таблицам или, наоборот, перебираем по одному заказу и получаем для него все строчки, ну и далее изменяем цену. Ну и соответственно после завершения вызов метода update у выборки строк. Пока я правильно иду? ![]()
__________________
Возможно сделать все. Вопрос времени |
|
Теги |
сравнение систем, 1c |
|
|