Имя: Пароль:
1C
Веб-мастеринг
1С и web сайт, передать файлы из 1с на сайт
0 d3N4eGG
 
14.08.13
22:21
Добрый вечер!
Ребята, помогите, пожалуйста, придумать решение задачи.
Есть база, стоит УНФ. Так же имеется вэб-портал, куда через web-сервиси из базы выгружается кое-какая информация.
В базе имеется справочник, к которому можно прикреплять файлы.
И вот нужно сделать возможность скачивать файлы с вэб-портала.
Каким образом это можно реализовать? На данный момент вообще идей нет(
1 DGorgoN
 
14.08.13
22:38
Обратится к специалисту я думаю самый ценный совет.
2 WhiteCat
 
14.08.13
22:41
(0) Так ftp же!
3 sda553
 
14.08.13
22:55
(2) А еще 16 и приборы
4 d3N4eGG
 
14.08.13
23:49
(1) плохой совет! я же сам хочу разобраться
5 WhiteCat
 
15.08.13
09:33
(3) Не приборы а порт, и не 16 а 21
6 sda553
 
15.08.13
09:37
(5) опечатался, наверно
7 manyak
 
15.08.13
09:42
(2) +1
либо выгрузка из справочника файлов в папку на хост, и паралельно генеришь file_list.html  с ссылками на скачку и вконце этот файл заливаешь на хост. а на сайте в меню ссыль "Скачать файлы" со ссылкой на \file_list.html
8 WhiteCat
 
15.08.13
10:05
(7) Зачем филелист, ему ж надо чтобы 1С автоматом закачивала и прикрепляла к докам.
9 Oftan_Idy
 
15.08.13
10:07
(0) Так сам же сказал что есть веб-сервис. Чем не устраивает?
10 cw014
 
15.08.13
10:08
HTTPСоединение
11 manyak
 
15.08.13
10:10
(8) "И вот нужно сделать возможность скачивать файлы с вэб-портала." - с сайта качать ему надо а не из 1с.

"ему ж надо чтобы 1С автоматом закачивала и прикрепляла к докам."
дык это уже есть:
"В базе имеется справочник, к которому можно прикреплять файлы."
12 WhiteCat
 
15.08.13
10:21
(11) Ну а я про что? 1С сама подключается через ftp к сайту, качает файлики и прикрепляет к докам.
13 manyak
 
15.08.13
10:38
(12) и "прикрепляет к докам" к каким? :)
"документ" на сайте - хостинге понятие немного другое, там идут "странички" и "файлы". файлы можно разместить в виде одной странички со ссыками на все файлы, либо кучу страниц - один файл - одна страница на сайте.
в моем совете конкретное решение через генерацию одной странички со ссыками на файлы из базы 1с справочника.
14 manyak
 
15.08.13
10:40
т.е. здесь задача тупо слить файлы из 1с базы на сайт, на сайте веб портал не 1с (упр. формы), соотв. никакой речи о доках нет.
15 WhiteCat
 
15.08.13
10:40
(13) Погоди, нам ТС еще не описал, какие именно документы с сайта к каким именно документам в 1С надо прикрепить. У меня например на сайте есть документы, которые не "странички", а самые обычные файлы, я их гружу регламентным заданием и обрабатываю автоматически.
16 WhiteCat
 
15.08.13
10:41
(14) Вот ты быстрый в выводах ) Давай сначала нам ТС пояснит, чего конкретно он хочет )
17 manyak
 
15.08.13
10:42
(16) :))) да чет пропал наш товарисч, уже сделал сам наверно все :)
18 acsent
 
15.08.13
10:42
через веб сервисы можно отлично передавать файлы в бейс64. См Докуметооборот
19 d3N4eGG
 
20.08.13
17:41
Извиняюсь, что пропал на несколько дней.
Но вот вернулся к данному вопросу и не совсем понял в какую сторону следует копать.

Объясняю проблему еще раз.

Есть информационная система на базе конфигурации УНФ. В УНФ реализован механизм прикрепления файлов к элементам справочника, документов и тд (справочник "Файлы").

Конкретно нас интересует справочник "Номенклатура", к которому можно так же прикреплять файлы.



Есть сайт (вэб-портал), в который из 1с через веб-сервисы выгружается табличка с номенклатурой.


На сайте есть возможность открыть страничку с информацией по выбранной номенклатуре, и вот на этой страничке нужно вывести список прикрепленных к данной номенклатуре файлов.

Но не просто имена файлов, а сделать возможность скачивания этих файлов прям с сайта.


Как вот это можно реализовать?
20 manyak
 
20.08.13
22:10
(7)
в цикле по справочнику номенклатуры дя каждого элемента справочника, потом вложенный цикл по файлам элемента номенклатуры, в теле этого влож. цикла:
-  выгружаешь на веб-портал текущий файл элемента номенклатуры в папку на хосте например "file_output"
- в текстовую переменную запоминаешь ссылки на выгруженные файлы:
<A HREF="\file_output\file_i.xxx">file_i_name</A> (Это html код ссылки)
разделяешь ссылки символом перевода строки.
когда пройдет влож цикл:
в код странички текущей номенклатуры добавляешь значение переменной в которой накопил все ссылки оформленные через html и сохраняешь этот новый код страницы номенклатуры.
и так будет для каждого элемента номенклатуры.
код странички править можно по разному - смотря как можно обратиться на портале к этой страничке: код странице в базе лежит, либо статичный html.
в папке "file_output" будут лежать все файлы
21 manyak
 
20.08.13
22:15
например:
исходный код странички определенной номенклатуры на хосте:
===========================
<p>номенклатура такая-то</p>
<p>текст описания номенклатуры</p>
===========================
после выгрузки код странички будет таким:
===========================
<p>номенклатура такая-то</p>
<p>текст описания номенклатуры</p>
<p>вы можете скачать сопутствующие файлы:</p>
<A HREF="\file_output\file_1.zip">file_1.zip</A>
<br>
<A HREF="\file_output\file_2.jpg">фото</A>
<br>
<A HREF="\file_output\file_3.doc">инструкция по установке</A>
===========================
<br>
22 WhiteCat
 
21.08.13
00:21
(20) Вручную чтоль все файлы выгружать и сопоставлять с номенклатурой на сайте?
(19) Какого типа файлы надо будет скачивать - эксель, картинки, все подряд?
23 Мимохожий Однако
 
21.08.13
07:19
Сначала надо взять формат файла для выгрузки от разработчика сайта. Остальное понятно.
24 manyak
 
21.08.13
08:22
(22) ну тут как бы изначально "метод вручную" не рассматриваем :)
где в (20) увидел про ручной метод?
25 WhiteCat
 
21.08.13
09:52
(24) "выгружаешь на веб-портал текущий файл элемента номенклатуры в папку на хосте например "file_output" " - как советуешь это сделать? В какой момент?
26 manyak
 
21.08.13
10:25
(25) тут несколько вариантов:
1) выгружать через фтп
2) выгружать через веб-сервисы
зависит как там все устроено у автора на веб-портале.

"Есть сайт (вэб-портал), в который из 1с через веб-сервисы выгружается табличка с номенклатурой"

вот в коде выгрузки можно посмотреть как там выгружается, и опредеить как лучше выгружать файлы.

выгружать можно в теле влож. цикла - шаг вл. цикла - выгрузка на хост, либо запоминать все локальные ссылки на файлы а потом кучей выгрузить их все на хост.
27 WhiteCat
 
21.08.13
10:41
(26) Хорошо, утверждаю! <дата, подпись, печать>
))))
28 manyak
 
21.08.13
11:11
(27) :))) погоди, через неделю вернется автор и тогда согласует :)))
хотя правильный ответ я думаю в (1) дал чел
29 WhiteCat
 
21.08.13
12:00
(28) Ну пусть чел сам попробует, все же когда-то с нуля начинали.
30 d3N4eGG
 
21.08.13
13:07
выгружать на вэб надо файлы любого формата, то может быть и картинка и пдф файл, и ексель.

На вэб через вэб-сервисы я передаю уже готовые html таблицы, то есть делаю выборку в 1с, там же рисую таблицу и её возвращаю на вэб.


Нашел следующую статью:
http://help1c.com/faq/view/1298.html

Загрузка файлов (изображений, документов и т.п.) на веб-сервер методом POST.



Вариант с выгрузкой файлов на фтп не нравится в целях безопасности, не хочется хранить файлы где-то еще.
31 manyak
 
21.08.13
13:20
ну значит вопрос закрыт? :)
1) предаешь на веб через веб -сервисы готовые таблицы с ссылками на файлы
2) грузишь файлы на веб -сервер методом POST
32 manyak
 
21.08.13
13:22
фтп имелось ввиду на том же хосте где и сайт. - так что
"file_output" на фтп и на сайте - это одно и тоже, просто к этой папке можно обратиться еще и по фтп.
33 d3N4eGG
 
21.08.13
15:10
начал писать функции возврата таблицы с файлами и столкнулся с другой проблемой: а где и как хранятся файлы в 1с (управляемре приложение - унф)? думал что в реквизите, но что-то не могу найти и понять структуру хранения.

что, собственно, мне следует передавать на вэб? подскажите, пожулуйста.
34 manyak
 
21.08.13
15:23
1) в "хранилище значений"
2) локально на винте где база лежит в опр. папке, в справочнике чисто ссылки - путь к файлу

"В базе имеется справочник, к которому можно прикреплять файлы."
покажи или посмотри код по загрузке файлов - там видно будет как и куда они пишутся.

на веб тебе передавать файлы нужно, задача то "передать файлы из 1с на сайт" :)