Вход | Регистрация



Как отобразить пидиэфку на УФ, без файла на клиенте, без регистрации, без смс?

Как отобразить пидиэфку на УФ, без файла на клиенте, без регистрации, без смс?
Я
   bolobol
 
04.10.18 - 11:25
Добрый день!

Подскажите, пожалуйста, как отобразить пидиэфку на УФ, без пидиэф-файла на клиенте?

Спасибо!
 
 
   BeerHelpsMeWin
 
1 - 04.10.18 - 11:33
На инфостарте что-то такое видел...
   Aleksey
 
2 - 04.10.18 - 11:43
Ну в 1с отчетности они же как то показывают.
   d4rkmesa
 
3 - 04.10.18 - 12:28
(0) Если грубо и неуниверсально, и с небольшой помощью БСП в виде работы с файлам, то:

&НаСервере
Процедура ОбновитьПолеHTML()
    
    МассивФайлов = Новый Массив;
    РаботаСФайлами.ЗаполнитьПрисоединенныеФайлыКОбъекту(Объект.Номенклатура, МассивФайлов);
    
    ДанныеФайла = РаботаСФайлами.ДанныеФайла(МассивФайлов[0],,Истина);
    
    АдресВременногоХранилища = ДанныеФайла.СсылкаНаДвоичныеДанныеФайла;    
    previewTAG = "<embed width=100% height=100% type=""application/pdf"" src="+АдресВременногоХранилища+" /embed>";
    
    Если ЗначениеЗаполнено(АдресВременногоХранилища) Тогда
        
        ТекстПоля = 
        "<html>
        |<body>" + previewTAG + "
        |</body></html>";
        
    КонецЕсли;    
    
КонецПроцедуры
   d4rkmesa
 
4 - 04.10.18 - 12:31
(3) Если что, то там ПолеHTMLДокумента и pdf, прикрепленных к справочнику номенклатуры в УТ 11.3. Иногда вместо тега embed канает object, а в качестве адреса - навигационная ссылка. Глубоко не копал. Все по мотивам http://catalog.mista.ru/public/290899/
   bolobol
 
5 - 04.10.18 - 13:41
Не пойму, нужно что-то ещё? Поле как было пустое белое, так и остаётся. Что с реквизита, что с временного хранилища.
   bolobol
 
6 - 04.10.18 - 13:50
e1cib/tempstorage/471ad8c4-273f-41af-a0c4-6531cb92ee1f
e1cib/data/Задача.Задачка.Пидиэф?ref=a348005056bba2e211e8c7c26e3bdd7e

это даю в срц - ноль реакции. embed / object - одинаково.
   Сияющий в темноте
 
7 - 04.10.18 - 14:00
посмотрите любой просмотри пдф в интернете в браузере и слижите оттуда код
<embed> это кривой таг осла
   bolobol
 
8 - 04.10.18 - 14:11
(7) Чем код этой страницы не код из интернета?
   d4rkmesa
 
9 - 04.10.18 - 14:15
(6) Адрес в хранилище точно правильный, получение отрабатывает? Прискорбно, если не работает, к сожалению, более универсального варианта пока не нашел.
   bolobol
 
10 - 04.10.18 - 14:27
Приехали. Не стал писать теги, просто приравнял к адресу хранилища временного:
(1, DNS_FAIL, http://www.e1cib.com)
Невозможно отобразить страницу...
 
 Рекламное место пустует
   bolobol
 
11 - 04.10.18 - 15:22
Работающего примера нет ни у кого откуда взять?
   jdaa
 
12 - 04.10.18 - 15:40
<code>
ВыводитьПолеHTML = Истина;
Если ВыводитьПолеHTML Тогда
// Для отображения предпросмотра в поле HTML нам необходимо полное имя файла.

Элементы.АдресДанныхФайла.Вид = ВидПоляФормы.ПолеHTMLДокумента;
АдресДанныхФайла = "<html><iframe src ='" + ИмяВременногоФайла + "' width='100%' height='100%'></iframe></html>";
</code>
   bolobol
 
13 - 04.10.18 - 17:47
Нельзя сохранять файл на локальном компьютере, а откуда форма читать файл будет, кстати?
   d4rkmesa
 
14 - 04.10.18 - 18:47
ПриСозданииНаСервере же. Временные файлы также можно на сервере в темпе сохранять, единственно, не забывая подчищать.
   Сияющий в темноте
 
15 - 04.10.18 - 21:38
Можно в базе поднять http сервис и данные для пдф получать через него,если с хранилищем не вышло.
   Сияющий в темноте
 
16 - 04.10.18 - 21:42
и,ксиати,когда мы копируем пример из браузера,то неплохо ьы задать вопрос про расширение,так как чаще всего показ пдф делается как раз через него,а поле html документа ни про какие расширения не знает.
но,можно зайти через браузер на вебпубликацию базы и посмотреть,а там оно работает или нет.
   palsergeich
 
17 - 04.10.18 - 23:50
Короче:
HTML, там пишешь код вывода изображения <image ... бла бла бла. Суть в атрибуте src (путь) - указываешь адрес временного хранилища. И это работает.
   palsergeich
 
18 - 04.10.18 - 23:51
Сам буквально пару месяцев назад столкнулся с этой проблемой. Единосвенное что взлетело (ну окромя говнокода с расшариванием папки через аппач - ИМХО дыра в безопасности) это в атрибуте путь указывать адрес временного хранилища
   palsergeich
 
19 - 04.10.18 - 23:53
А да моя задача была - что бы это работало и в браузере (12) в браузере работать не будет
   bolobol
 
20 - 05.10.18 - 09:16
(19) К сожалению, срц (путь) даёт сообщение как я выше указывал:
(1, DNS_FAIL, http://www.e1cib.com)

он не хранилище ищет, а домен! И что ему не так?...
   bolobol
 
21 - 05.10.18 - 09:18
Может эти записи

e1cib/tempstorage/471ad8c4-273f-41af-a0c4-6531cb92ee1f

e1cib/data/Задача.Задачка.Пидиэф?ref=a348005056bba2e211e8c7c26e3bdd7e

Как-то по-иному писать в срц нужно? Префикс какой добавить...
   palsergeich
 
22 - 05.10.18 - 09:31
(21) Вот  тестовый, только что проверил.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<meta name="format-detection" content="telephone=no" />
<style type="text/css">
body{margin:0;padding:8px;}
p{line-height:1.15;margin:0;white-space:pre-wrap;}
ol,ul{margin-top:0;margin-bottom:0;}
img{border:none;}
li>p{display:inline;}
</style>
</head>
<body>
<ol>
<li>
<p style="display:inline;"><span style="font-size: 14pt;font-style: normal;font-weight: bold;text-decoration: none;">кпвапвап</span></p>
</li>
</ol>
<p><br></p>
<p><img height="571" src="e1cib/tempstorage/82489d16-bded-4069-b9bf-c7eb49a5871d?seanceId=da014827-b7a9-4272-8ab1-3c5de2d16ced" style="border:none;" width="1152"/></p>
</body>
</html>
   palsergeich
 
23 - 05.10.18 - 09:34
&НаСервереБезКонтекста
Функция СохранитьКартинкуНаСервере(Картинка)
    //ИмяФайла = ПолучитьИмяВременногоФайла("jpg");

    Возврат ПоместитьВоВременноеХранилище(Картинка.ПолучитьДвоичныеДанные(),Новый УникальныйИдентификатор);
    
    
    
КонецФункции

&НаКлиенте
Процедура ЗаполнитьТекстВопросаИОтветы()
    // заполнение текста вопросов

    СтруктураФД = ПолучитьТекстВопросаНаСервере(ТекущийВопрос);
    Если СтруктураФД <> Неопределено Тогда
        ТекстHTML = СтруктураФД.ТекстHTML;
        Для Каждого КлючЗначение Из СтруктураФД.Вложения Цикл
            СтрокаПоиска = "src=""" + КлючЗначение.Ключ;
            ПутьКФайлу = СохранитьКартинкуНаСервере(КлючЗначение.Значение); 
            СтрокаЗамены = "src=""" + ПутьКФайлу;
            ТекстHTML = СтрЗаменить(ТекстHTML,СтрокаПоиска, СтрокаЗамены);
        КонецЦикла;
        ТекстВопроса = ТекстHTML;    
    Иначе 
        ТекстВопроса = "";
    КонецЕсли;
    
КонецПроцедуры

Есть одно: HTML формируеттся на клиенте.
   bolobol
 
24 - 05.10.18 - 09:51
(22) А чего он сложны-то такой? В примерах - одна строка всего, два тега.
   bolobol
 
25 - 05.10.18 - 09:58
С тегом img - ругаться на поск домена перестал, но картинку красным крестиком показывает - нет, типа, возможности отобразить. И как это понимать?
   bolobol
 
26 - 05.10.18 - 10:05
(22) После квадратика с красным крестиком, этот код выдаёт:

" style="border:none;" width=100%/>

- и это уже даже не смешно...
   bolobol
 
27 - 05.10.18 - 10:06
(26) Слава яйцам зайцев - это я накосячил.
   bolobol
 
28 - 05.10.18 - 11:42
Стало два вопроса:

- что за тег решающий <p>, после которого 1С стала понимать, что внутреннюю ссылку не надо искать на просторах интернета?
- и почему, всё-таки, картинки не могут отобразиться? Лишь красный крестик, будто картинки и нет
   БледноЗолотистый
 
29 - 05.10.18 - 11:54
У меня работает как то так:
MIMEТип = ПолучитьMIMEТипПоРасширению(ДанныеФайла.Расширение);    // соответствия типов от расширений хранятся у меня в макете            

НаВесьЭкран = ?(Найти(MIMEТип, "application")>0, """ width=100% height=100%", "");
ДокументПредпросмотра = 
"<HTML>
|    <BODY>
|    <OBJECT>
|    <EMBED src = """+ ДанныеФайла.НавигационнаяСсылкаТекущейВерсии +""" type=""" + MIMEТип + НаВесьЭкран + """>
|    </EMBED>
|    </OBJECT>
|    </BODY>
|</HTML>"
   palsergeich
 
30 - 05.10.18 - 11:54
(28) формируйте html на клиенте, в моем случае при переносе на сервер, что было бы логично, приводило к полной неработоспособности. Я понимаю почему, но писать лень
   bolobol
 
31 - 05.10.18 - 12:00
(29) У меня без тега <p> - вообще ищет сервер е1сдб.ком.
(30) На клиенте формируется, но не сформировывается.

И при разных (ембед/объект/имг/иффрейм) - только пикторграмма меняются - то "красный крестик", типа "картинка не загружена", то "разноцветный документ", типа "объект тут какой-то, но я вам егоне покажу"
   БледноЗолотистый
 
32 - 05.10.18 - 12:04
(31) Вообще никакие картинки не отображаются? Или пдф? У меня были проблемы, со старым adobe reader ом, стоило обновить и все стало хоккей.
   bolobol
 
33 - 05.10.18 - 12:05
(32) И картинка ПНГ - тоже не отображается.
 
 
   singlych
 
34 - 05.10.18 - 12:39
(33) А IE-то способен отображать картинки? Посмотри в настройки безопасности.
   bolobol
 
35 - 05.10.18 - 12:41
Срочно опубликовал базу - зашёл в неё и в веб-клиенте картинка есть!!! А что с тонким клиентом? Это норма - не показывать содержания ПоляХТМЛ?
   singlych
 
36 - 05.10.18 - 14:14
(35) веб-клиент в експлорере запускал?
   bolobol
 
37 - 05.10.18 - 14:21
(36) Да.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует