06.11.2013, 12:16 | #1 |
Участник
|
Потребовалось на форму запроса датапорта добавить параметр. Естественно стандартная форма тут же исчезла (файл для импорта/экспорта, направление: импорт/экспорт), все сделал (по файлу взял отсюда: Про датапорт - Андрей Панько). Теперь требуется запустить датапорт в нужном направлении: импорт или экспорт, чекбоксы уже есть, переменная Option принимает значение Import/Export в зависимости от выбора на чекбоксах (сымитировал чекбоксами группу радиобаттонов на тригерах OnPush). Откуда и как запустить датапорт на импорт или экспорт в зависимости от выбора?
Кому интересно скрин формы запроса прилагаю. [attachment=1348:Безымянный.PNG]
__________________
Как только вы проиграете, все ваши прошлые победы забудут. |
|
06.11.2013, 13:30 | #2 |
Участник
|
zuzka, а стандартный способ запуска датапорта не прокатывает? Т.е. объявить переменную Dataport, задать параметры и запустить.
Я как-то так запускаю: Код: SalesSetup.GET; FileName := SalesSetup."Price Path" + 'scv\price.txt'; IF EXISTS(FileName) THEN ERASE(FileName); SalesPriceRec.COPYFILTERS(_Rec); SalesPriceRec.SETRANGE(scv,TRUE); SalesPrice.IMPORT(FALSE); SalesPrice.FILENAME(FileName); SalesPrice.SETTABLEVIEW(SalesPriceRec); SalesPrice.RUNMODAL; CLEAR(SalesPrice); P.S. Блин, сейчас посмотрел, у меня же реквест форма совсем отключена, соответственно все выгружается/загружается из функции. Но может вам такой метод подойдет, если вынести все параметры на какую-нибудь форму и оттуда вызывать. |
|
06.11.2013, 13:52 | #3 |
Участник
|
На сколько я понял в строке:
Код: SalesPrice.IMPORT(FALSE); Код: SalesPrice.IMPORT(TRUE);
__________________
Как только вы проиграете, все ваши прошлые победы забудут. |
|
06.11.2013, 13:56 | #4 |
Участник
|
Цитата:
Код: SalesSetup.GET; FileName := SalesSetup."Load Price" + 'price.txt'; SalesPrice.IMPORT(TRUE); SalesPrice.FILENAME(FileName); SalesPrice.RUNMODAL; CLEAR(SalesPrice); IF EXISTS(FileName) THEN ERASE(FileName); |
|
06.11.2013, 14:14 | #5 |
Участник
|
Не прокатило - просто открывает заново форму запроса...
Если вызывать через DATAPORT.RUN(№, FALSE, Record) - подвисание и ничего в файле... Видимо придется создавать пару новых объектов...
__________________
Как только вы проиграете, все ваши прошлые победы забудут. |
|
06.11.2013, 14:22 | #6 |
Участник
|
Цитата:
Кстати, еще свойство Import стоит No. Не помню почему так сделал, но есть подозрения, что из-за этого свойства какая-то бага вылезала. Нельзя было задать программно Import или что-то такое. |
|
06.11.2013, 15:11 | #7 |
Участник
|
Код: SalesPrice.IMPORT(TRUE); SalesPrice.FILENAME(FileName); SalesPrice.SETTABLEVIEW("Sales Price"); SalesPrice.RUN;
__________________
Как только вы проиграете, все ваши прошлые победы забудут. |
|