Вопрос

Выгрузить клиенту файл из БП

Запускаем БП - в нем нужно прописать выгрузку FileStream или byte[] как обычный файл, чтобы после выполнения кода - началась загрузка файла

Нравится

4 комментария
Лучший ответ

Радчук Виталий Владимирович,

Можно.

onSalesDesktopV2: function() {
    var token = "CardModuleV2/UsrAwaitingPageV2";
    this.sandbox.publish("PushHistoryState", {hash: token});
}

 

Точно БП? В таком случае делать аналогично тому, как работает скачивание отчётов. Примерно:

1) Бп генерирует файл, складирует в IDataStore по определённому ключу (допустим генерируется guid). Далее из бп высылается сообщение на клиент с ключом.

2) Клиент принимает сообщение, снова обращается на сервер, но уже за скачиванием.

3) На сервере надо написать класс и функцию, которая будет возвращать стрим с дополнительными header-ами.

Всроде все. Можно вместо БП использовать сервис и тогда просто делать return ключа и не гемороиться с сообщениями.

Варфоломеев Данила,

тоесть нет простого пути(

БП мне нужен только для открития преднастроенной страницы, ее из клиента можно както открить?

Радчук Виталий Владимирович,

Можно.

onSalesDesktopV2: function() {
    var token = "CardModuleV2/UsrAwaitingPageV2";
    this.sandbox.publish("PushHistoryState", {hash: token});
}

 

Пащенко Александр Сергеевич,

Дошло руки до этого, хочу убрать бп и вызвать страницу из кода.

"CardModuleV2/UsrAwaitingPageV2" - это точно так как нужно? 

UsrAwaitingPageV2 - название страницы? То что пишет в define.

CardModuleV2 - остается.

Пишет множество ошибок:

Заголовок для подписи "LOOKUPfa02a572-e764-48bf-ad0b-4997972a368f" не был найден.
 
Невозможно найти колонку по конфигурации: "{"layout":{"colSpan":12,"rowSpan":1,"column":12,"row":1,"layoutName":"Header"},"bindTo":"UsrLookup2","enabled":true,"contentType":5,"name":"LOOKUPfa02a572-e764-48bf-ad0b-4997972a368f"}" .
 
Uncaught TypeError: Cannot read property 'header' of undefined
    at i.getPageHeader (:82/0/conf/content/BasePageProcessTemplate.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:95)
    at initHeader (:82/0/conf/content/BasePageV2.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:2345)
    at i.onEntityInitialized (:82/0/conf/content/BasePageV2.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:1680)
    at i.callParent (all-combined.js:6)
    at i.onEntityInitialized (:82/0/conf/content/BasePageV2.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:3378)
    at i.callParent (all-combined.js:6)
    at i.onEntityInitialized (:82/0/conf/content/BasePageV2.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:3565)
    at Object.callback (all-combined.js:6)
    at i.<anonymous> (all-combined.js:7)
    at Object.Terrasoft.eachAsync (all-combined.js:7)
 
file: http://192.168.10.24:82/0/conf/content/BasePageProcessTemplate.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45
 line: 95
 column: 24
 message: Uncaught TypeError: Cannot read property 'header' of undefined 
 date: Fri Dec 07 2018 20:17:33 GMT+0300 (Москва, стандартное время)
 stack: TypeError: Cannot read property 'header' of undefined
    at i.getPageHeader (http://192.168.10.24:82/0/conf/content/BasePageProcessTemplate.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:95:24)
    at initHeader (http://192.168.10.24:82/0/conf/content/BasePageV2.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:2345:85)
    at i.onEntityInitialized (http://192.168.10.24:82/0/conf/content/BasePageV2.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:1680:10)
    at i.callParent (http://192.168.10.24:82/core/88fb020650912ad22d23339c297888ad/combined/all-combined.js:6:44657)
    at i.onEntityInitialized (http://192.168.10.24:82/0/conf/content/BasePageV2.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:3378:10)
    at i.callParent (http://192.168.10.24:82/core/88fb020650912ad22d23339c297888ad/combined/all-combined.js:6:44657)
    at i.onEntityInitialized (http://192.168.10.24:82/0/conf/content/BasePageV2.js?hash=9dd7bbf4b00441f59c94ee1b3eae3f45:3565:10)
    at Object.callback (http://192.168.10.24:82/core/88fb020650912ad22d23339c297888ad/combined/all-combined.js:6:73147)
    at i.<anonymous> (http://192.168.10.24:82/core/88fb020650912ad22d23339c297888ad/combined/all-combined.js:7:1024268)
    at Object.Terrasoft.eachAsync (http://192.168.10.24:82/core/88fb020650912ad22d23339c297888ad/combined/all-combined.js:7:156660)

 

Показать все комментарии