Конвертируем печатную форму pdf в картинку (jpg, gif, png и прочие) на сервере

Публикация № 1573726 22.12.21

Приемы и методы разработки - Практика программирования

Была поставлена интересная задача конвертировать печатную форму в файл картинку. По условию задачи клиенту на почту нужно присылать только файл картинку (jpg, gif).

Сразу замечу, что использование виртуального принтера (вроде PDFCreator) невозможно, т.к. печать и рассылка писем идет на сервере (не под клиентом), и команда ТабличныйДокумент.Напечатать() недоступна для использования.

Весь код выполняется на сервере. Вначале получим "ТабличныйДокумент" внешней печатной формы.

 

 

ТабличныйДокумент = ПечатьИзВПФ("Заявка клиента","ЗаявкаКлиента");

Функция ПечатьИзВПФ(ИмяВП, Макет) Экспорт
 
    СсылкаНаВПФ = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию(ИмяВПФ);
    
    Если СсылкаНаВПФ.Пустая() Тогда
        Сообщить("В справочнике ""Дополнительные отчеты и обработки"" не найдена внешнюю печатную форму с наименованием '" + ИмяВПФ + "'");
        Возврат "";
    КонецЕсли;
    
    Попытка
        ОбработкаОбъект = ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(СсылкаНаВПФ);
    Исключение
        Сообщить("Не удалось напечатать """ + ИмяВПФ + "'"". Ошибка создания объекта дополнительной ПФ");
        Возврат "";
    КонецПопытки;
    
    МассивОбъектов = Новый Массив;
    МассивОбъектов.Добавить(СсылкаНаДокумент);
    	
    ТабличныйДокумент = "";
    Попытка
        ТабличныйДокумент = ОбработкаОбъект.СформироватьПечатнуюФорму(МассивОбъектов,Макет);
    Исключение
    	Сообщить("Не удалось напечатать """ + ИмяВПФ + "'""." + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
    КонецПопытки; 
 
    Возврат ТабличныйДокумент; 
        
КонецФункции

 

В модуле печатной формы должна быть экспортная процедура СформироватьПечатнуюФорму(МассивОбъектов,Макет)

 

 

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
	                                                                         
	ПечатнаяФорма = УправлениеПечатью.СведенияОПечатнойФорме(КоллекцияПечатныхФорм, "ЗаявкаКлиента");
	                                           
	Если ПечатнаяФорма <> Неопределено Тогда
		ПечатнаяФорма.ТабличныйДокумент = СформироватьПечатнуюФорму(МассивОбъектов,"ЗаявкаКлиента");
		ПечатнаяФорма.СинонимМакета = НСтр("ru = 'Заявка клиента'");
	КонецЕсли;
	
КонецПроцедуры

Функция СформироватьПечатнуюФорму(МассивОбъектов,МакетДляПечати) Экспорт
	Если МакетДляПечати = "ЗаявкаКлиента" Тогда
		Возврат СформироватьПечатнуюФормуЗаявкаКлиента(МассивОбъектов,МакетДляПечати);		
	КонецЕсли;	
КонецФункции

Функция СформироватьПечатнуюФормуЗаявкаКлиента(МассивОбъектов,МакетДляПечати) 
	
	Док = МассивОбъектов[0];
	
	ТабличныйДокумент = Новый ТабличныйДокумент;
	Макет =  ПолучитьМакет(МакетДляПечати);
		
	Возврат ТабличныйДокумент;
	
КонецФункции

 

Сохраним "ТабличныйДокумент" в файл pdf

 

 

ИмяВременногоФайла = КаталогВременныхФайлов() + СтрЗаменить(ИмяФайла," ","_") + ".pdf";
ТабличныйДокумент.Записать(ИмяВременногоФайла, ТипФайлаТабличногоДокумента.PDF);

 

На сервере должна быть установлена программа ImageMagick и Ghostscript

https://imagemagick.org/

https://www.ghostscript.com/

В скрипте мы запускаем ImageMagick, а Ghostscript является вспомогательной программой ее использует сама ImageMagick.

Устанавливаем нужное расширение у "ИмяВременногоФайла_img" (jpg,gif,png и прочие).

ПаузаВСекундах нужна, чтобы если мы хотим дальше использовать файл "ИмяВременногоФайла_img", программа  ImageMagick успела сохранить результат на диск.

 

 

ИмяВременногоФайла_img = ИмяВременногоФайла + ".jpg";
КонвертироватьPDFtoImg(ИмяВременногоФайла,ИмяВременногоФайла_img);
		
Процедура КонвертироватьPDFtoImg(ИмяВременногоФайла,ИмяВременногоФайла_img) Экспорт	
	СтрокаЗапуска = """C:\Program Files (x86)\ImageMagick-7.1.0-portable-Q16-x64\convert.exe"" -density 300 -trim "+ИмяВременногоФайла+" -quality 100 "+" "+ИмяВременногоФайла_img;
	ЗапуститьПриложение(СтрокаЗапуска,,Истина,Неопределено);

	ПаузаВСекундах(5);		
КонецПроцедуры

Функция ПаузаВСекундах(СекундЗадержки)  Экспорт
	Если СекундЗадержки>0 Тогда
		scr = Новый COMОбъект("WScript.Shell"); 
		scr.Run("TIMEOUT -T "+Число(СекундЗадержки)+" -NOBREAK",0,1);
	КонецЕсли;
КонецФункции

 

 

 
Полный текст модуля

 

Тестировал: 

1С:Комплексная автоматизация 2 (2.4.13.209)

Платформа 1С:Предприятие 8.3 (8.3.18.1646)

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. salexdv 2039 22.12.21 11:36 Сейчас в теме
Делал в своё время вот такое, но там страницы режутся на отдельные картинки. Тут получается будет одна большая картинка на все страницы?
2. John_d 3734 22.12.21 11:48 Сейчас в теме
(1) через командную строку можно обращаться к страницам как к массиву [0]
-density 300 -trim D:\22.pdf[0] -quality 100 D:\11.jpg
rmIvanT; salexdv; +2 Ответить
3. VKislitsin 684 22.12.21 12:47 Сейчас в теме
Евгений, подскажите пожалуйста, а какие-то варианты без использования ImageMagick, Ghostscript и прочих cpdf, не прорабатывались?
Я, честно говоря, прочитав заголовок, обрадовался что вы нашли способ сделать картинку из PDF без использования сторонних модулей.
Aleskey_K; +1 Ответить
4. John_d 3734 22.12.21 13:03 Сейчас в теме
(3) я не нашел таких вариантов.
VKislitsin; +1 Ответить
5. SGordon1 22.12.21 13:44 Сейчас в теме
(4) А На клиенте же можно Напечатать табдокуменнт ( это чтобы без магии с призраками) Плнятно что костыль....
6. John_d 3734 22.12.21 14:08 Сейчас в теме
8. shard 261 22.12.21 14:43 Сейчас в теме
(4) раньше пользовал пакет xpdfreader, полагаю pdfimages будет полегче, чем связка ImageMagick и Ghostscript
13. Dach 333 22.12.21 15:53 Сейчас в теме
14. crazycat 130 22.12.21 15:55 Сейчас в теме
(3) Есть внешняя компонента, которая позволяет сохранять PDF в различные форматы картинок, плюс она умеет "выдирать" картинки из PDF, т.е. рендеринга картинки не происходит, просто извлекается оригинальная картинка, которая интегрирована в PDF.
15. Трактор 1233 22.12.21 16:34 Сейчас в теме
(3) Питон довольно легко прикручивается к 1С. Вот питоний модуль для конвертации пдф в картинку
https://pypi.org/project/pdf2image/

Вот ещё конвертор из пдф в пнг. Этому я больше доверяю.
https://waksoft.susu.ru/2021/08/09/kak-s-pomoshhyu-python-preobrazovat-pdf%e2%80%91fajly-v-kartinki/


Вот как питон прикручивается к 1С https://infostart.ru/public/1523714/
21. kembrik 3 18.01.22 09:55 Сейчас в теме
(15) Прошу прощения, но последняя ссылка на вопрос "как" не отвечает без скачивания вашей обработки. "Стандартно ставим питон и либы", скрипт кладём в макет, а дальше "магия"

Что под капотом? Заточена на установку питона на клиенте или на сервере? ВК? COM? Или стандартные консольные команды (и не забудьте про переменные окружения на сервере и клиенте)? Вот бы узнать
22. Трактор 1233 18.01.22 22:55 Сейчас в теме
>> последняя ссылка на вопрос "как" не отвечает без скачивания вашей обработки
(21) вы же и ответили. ставим питон, библиотеки. Прошу заметить, библиотеки с открытым кодом. Интересно - разбирайтесь.
Скрипты все свои результаты кладут в файлы. Разбираем эти файлы и показываем пользователю. Всё. Добавить нечего. Файл обработки для ленивых. Грамотный 1Сник всё повторит не скачивая. Ну или скачает, чтобы время не тратить.

>> Что под капотом?
1. 1С сохраняет питоний скрипт и картинку в файлы.
2. Создаёт командный файл и запускает его.
3. Скрипт пишет штрихкоды в выходной файл. Картинку в ещё один файл.
4. 1С разбирает выходные файлы и показывает их пользователю

>> Заточена на установку питона на клиенте или на сервере?
На сервере.

>> ВК? COM? Или стандартные консольные команды
Консоль

>> (и не забудьте про переменные окружения на сервере и клиенте)?
Путь к питону можно указать полностью. Остальные переменные не важны.
7. quazare 1587 22.12.21 14:42 Сейчас в теме
Евгений, это у тебя какое-то регламентное задание отрабатывается? Рассылка отчетов?
11. John_d 3734 22.12.21 15:02 Сейчас в теме
9. quazare 1587 22.12.21 14:48 Сейчас в теме
спасибо, что напомнил про ЗапуститьПриложение. И не забудь указать, если у кого-то включен профиль безопасности на сервере на запрет запуска сторонних программ на сервере.
10. quazare 1587 22.12.21 14:49 Сейчас в теме
паузу в секундах я бы сделал через пинг
12. blockcode 39 22.12.21 15:12 Сейчас в теме
Подобную задачу я решал с использованием консольной утилиты pdftk http://softhelp.org.ua/?p=7118
Если вам необходимо исполнить не одну а несколько команд рекомендую создать временный temp.bat, записать в него все команды, выполнить его, и удалить после этого.
16. quazare 1587 22.12.21 17:37 Сейчас в теме
вы бы лучше нашли библиотечку с обратным ходом (распознавалкой)
17. ВикторП 290 23.12.21 09:51 Сейчас в теме
Решение проверено уже временем в Документообороте - там это стандартный функционал
18. dolter 119 29.12.21 10:41 Сейчас в теме
Image Printer Pro - виртуальный принтер во многие графические и не только графические форматы. Есть клиентский и серверный вариант. Штука платная, но работает хорошо (правильно и без танцев с бубном).
19. oleg-x 17 08.01.22 21:57 Сейчас в теме
(18) Вот только одна загвоздка. На сервере нет метода печати. Печать на сервере делается только через костыли (внешними компонентами или через ком-соединение).
20. dolter 119 09.01.22 11:03 Сейчас в теме
(19) действительно... остается только поиграть с сохранением файла и копированием на lpt(N) с предварительными настройками.
Оставьте свое сообщение

См. также

Аналог PIVOT в запросе 1С (как выполнить транспонирование таблицы в запросе 1С) Промо

Практика программирования v8 Бесплатно (free)

В статье показывается простой метод реализации аналога оператора PIVOT в запросе 1С без использования соединений.

12.12.2020    5238    Eugen-S    24    

СКД: 5 советов, как сделать лучше

Практика программирования v8 v8::СКД 8.3.14 Бесплатно (free)

Несколько примеров решения задач с использованием разных подходов

27.10.2021    5633    Neti    19    

Полезные примеры СКД, ч.2

Практика программирования v8 v8::СКД Бесплатно (free)

Еще несколько примеров решения задач в СКД.

06.04.2021    11866    Neti    8    

Неочевидные нюансы записи управляемой формы

Практика программирования v8 v8::УФ Платформа 1C v8.2 1cv8.cf Бесплатно (free)

Разберем несколько нюансов записи управляемой формы.

02.04.2021    14610    SeiOkami    54    

Использование классов .Net в 1С для новичков Промо

Разработка внешних компонент Универсальные функции Практика программирования v7.7 v8 Бесплатно (free)

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    86751    Serginio    116    

Обзор полезных методов БСП 3.1.4

БСП (Библиотека стандартных подсистем) Практика программирования v8 1cv8.cf Бесплатно (free)

Библиотека стандартных подсистем (далее - БСП) является частью любой типовой конфигурации, поэтому умение применять готовые процедуры и функции повышает качество разработки и избавляет от написания лишнего кода. К сожалению, не у всех есть время и упорство овладеть всей документацией, поэтому я собрал воедино наиболее популярный функционал.

25.03.2021    47213    rayastar    53    

Звуковое управление в 1С 8.3

Практика программирования v8 1cv8.cf Бесплатно (free)

В данной статье описано создание библиотеки для звукового управления (выполнение команд голосом) для платформы 1С 8.3. Задача была поставлена так, чтобы модуль функционировал непосредственно на клиенте 1С, осуществляя управление формами, и взаимодействовал с интерфейсом.

16.03.2021    7671    velemir    33    

Доработка проведения в ERP 2.5. (Регистры накопления, Регистры сведений)

Практика программирования v8 ERP2 БУ Бесплатно (free)

Покажу точки входа для доработки "типового" проведения документов в ERP для регистров оперативного учета. Рассмотрим три основные ситуации: нужно изменить имеющееся проведение документа; нужно сделать записи в существующие регистры; нужно с нуля описать алгоритм проведения в добавленный регистр. Пример реализован на 1С:ERP Управление предприятием 2 (2.5.4.120)

10.01.2021    11970    BuriyLesha    10    

Использование программных перечислений, ч.1: строковые константы Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Часто ли у вас возникает необходимость в коде выполнять сравнение на строку?

10.12.2016    41373    unichkin    74    

Serverless (Faas) в 1С. Создание и вызов Yandex Cloud Functions

Универсальные функции Практика программирования v8 Бесплатно (free)

"Я не могу просто взять и скопировать код с гитхаба", "у нас 1С микросервисами окружена", "возможностей мало" - частые фразы 1С разработчиков. которым не хватает возможностей платформы в современном мире. Faas, конечно, история не новая, но нас сдерживало 152ФЗ и задержки по пингам. Для того, чтобы действительно использовать в 1С код, к примеру, на Python, надо было приложить усилия. Теперь всё намного проще - берём и используем.

28.12.2020    9425    comol    31    

Базовые вещи БСП, которые облегчат жизнь программисту 1С

БСП (Библиотека стандартных подсистем) Практика программирования v8 1cv8.cf Россия Бесплатно (free)

В данной публикации я опишу полезные процедуры и функции модуля общего назначения библиотеки стандартных подсистем, обязательные к использованию любым программистом 1С.

30.08.2020    21734    quazare    34    

Вспомогательные инструкции в коде 1С Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Помогаем редактору кода 1С помогать нам писать и анализировать код.

15.10.2018    36701    tormozit    107    

Серверные вызовы, которые нельзя вызывать

Практика программирования v8 v8::УФ 1cv8.cf Бесплатно (free)

Не баян, а классика. Рассмотрим особенность платформы настолько же древнюю, как сами УФ.

12.05.2020    9852    SeiOkami    34    

Форма выбора (подбор) в управляемых формах

Практика программирования v8 v8::УФ 1cv8.cf Россия Бесплатно (free)

Разбор небольших примеров того, как правильно открывать форму выбора (подбора) в управляемых формах, не прибегая к модальным окнам.

08.05.2020    89126    user5300    28    

Конвертация расширения cfe в конфигурацию сf руками

Практика программирования v8 1cv8.cf Бесплатно (free)

Как быстро преобразовать расширение в конфигурацию (для дальнейшего переноса в основную конфигурацию, например).

18.03.2020    11637    wtlz    35    

Оформление и рефакторинг сложных логических выражений Промо

Практика программирования v8 Россия Бесплатно (free)

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

20.09.2012    83217    tormozit    131    

Эволюция расширения конфигурации

Практика программирования v8 1cv8.cf Бесплатно (free)

С каждым днем всё больше возможностей появляется в расширении конфигурации, но не все до сих пор работают даже на платформе 8.3.6! Давайте окунемся в историю появления и эволюции расширения конфигурации, чтобы знать и понимать, когда можно применить тот или иной функционал!

06.02.2020    16386    Xershi    47    

Программная работа с настройками СКД

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Нюансы программной работы с настройками системы компоновки данных в отчетах и динамических списках. Обзор всех видов настроек компоновки. Что в каких случаях правильно применять. В качестве примера рассмотрена работа с отборами и группировками.

27.01.2020    70463    ids79    27    

[СКД] Программное создание схемы компоновки данных

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Сделаем отчет на СКД полностью программно, без использования макета "схема компоновки данных".

15.01.2020    45948    John_d    22    

Запись значения в поле ввода/формы со срабатыванием события ПриИзменении Промо

Практика программирования v8 1cv8.cf Россия Бесплатно (free)

Иногда возникает необходимость после записи значения в какое либо поле ввода/формы вызвать для него обработчик события ПриИзменении, а о вызове самого события приходится только мечтать. В этой статье приводится программный способ вызова этого события.

11.07.2007    55158    tormozit    51    

Последовательности событий при проведении документа 1С. Шпаргалка + про формы + про расширения

Практика программирования v8 Россия Бесплатно (free)

Собрал информацию о событиях/подписках/расширениях в одном месте.

30.12.2019    37895    kuzyara    38    

Мониторим производительность с помощью 1С RAS

Практика программирования v8 1cv8.cf Бесплатно (free)

Подключаемся и анализируем данные через 1С RAS. Необходимо выполнить 5 пунктов и серьезный инструмент мониторинга будет у вас в руках.

19.12.2019    15911    ivanov660    51    

30 задач. Странных и не очень

Практика программирования v8 Бесплатно (free)

30 задач на знание языка программирования 1С и некоторого поведения платформы. Маленьких. Странных и не очень.

02.12.2019    25746    YPermitin    63    

Как сделать из &НаКлиентеНаСервереБезКонтекста почти &НаКлиентеНаСервере Промо

Практика программирования v8 1cv8.cf Россия Бесплатно (free)

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

10.09.2017    51927    tormozit    74    

Обновление релиза измененной типовой конфигурации

Практика программирования v8 1cv8.cf Бесплатно (free)

Пригодится тем, кому еще не приходилось обновлять измененную типовую конфигурацию.

29.11.2019    16001    John_d    76    

Как передать IP адрес, который вызвал HTTP запрос в 1C (для веб-сервера Apache)

Практика программирования v8 Бесплатно (free)

Столкнулся с задачей получения IP адреса, который вызывает http сервис 1С. Итак, решение:

22.11.2019    13192    Sibars    19    

Шпаргалка (БСП). Добавление в новый документ механизма печати дополнительных печатных форм

Практика программирования v8 1cv8.cf Бесплатно (free)

Постоянно приходится вспоминать, как добавить механизм печати (БСП) в новый документ. Поэтому решил написать шпаргалку.

10.10.2019    32685    John_d    21    

Выгрузка документа по условию Промо

Практика программирования v8 Бесплатно (free)

Что делать, если документы нужно выгружать не все подряд, а по какому-то фильтру: статусу, дате, набору условий... А что если он соответствовал этим условиям, а потом перестал? А если потом опять начал? Такие ситуации заставили попотеть не одного программиста.

25.04.2019    18181    m-rv    3    

Таблица значений. Нюансы

Практика программирования v8 Бесплатно (free)

Обзор некоторых аспектов использования общеизвестного инструмента 1С.

01.10.2019    55547    Yashazz    56    

[Шпаргалка] Программное создание элементов формы

Работа с интерфейсом Практика программирования v8 1cv8.cf Бесплатно (free)

Программное создание практически всех популярных элементов формы.

06.09.2019    111236    rpgshnik    77    

Агрегатные функции СКД, о которых мало кто знает

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Пользуетесь ли Вы всеми возможными агрегатными функциями, которые предоставляет система компоновки данных? Если Вы используете только: СУММА, КОЛИЧЕСТВО, МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ, то эта статья для Вас.

05.09.2019    81914    ids79    56    

Как прикрутить ГУИД к регистру сведений Промо

Практика программирования v8 Бесплатно (free)

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

16.04.2019    23608    m-rv    18    

Регистры бухгалтерии. Общая информация

Математика и алгоритмы Практика программирования v8 v8::БУ БУ Бесплатно (free)

Общая информация о внутреннем устройстве регистров бухгалтерии.

05.09.2019    48892    YPermitin    27    

Три костыля. Сказ про фокусы в коде

Практика программирования v8 Бесплатно (free)

Три интересных (или странных) костыля в коде, которые могут помочь в повседневных и не очень задачах.

03.09.2019    30645    YPermitin    81    

Отслеживание выполнения фонового задания

Практика программирования v8 1cv8.cf Бесплатно (free)

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

17.08.2019    46613    ids79    22    

Как сделать запрос на изменение данных Промо

Практика программирования v8 v8::Запросы 1cv8.cf Бесплатно (free)

В статье приведены особенности внутренней архитектуры и примеры работы с расширением языка запросов 1С.

01.06.2018    37847    m-rv    23    

Функции СКД: ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Подробное описание и использование внутренних функций системы компоновки данных: Вычислить, ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив, ВычислитьВыражениеСГруппировкойТаблицаЗначений.

08.08.2019    162212    ids79    77    

Фоновое выполнение кода в 1С - это просто

Практика программирования v8 1cv8.cf Бесплатно (free)

Как легко запускать выполнение в фоне, не прибегая к долгому описанию фоновых процедур.

02.08.2019    64100    avalakh    27    

Разбираемся с параметрами редактирования СКД

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Связь по типу, Параметры выбора, Связи параметров выбора

31.07.2019    44560    json    17    

Метод формирования движений в типовых регистрах нетиповыми регистраторами Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Вариант решения задач с проведением по типовым регистрам нетиповыми регистраторами. Зачем - чтобы при сравнении конфигурации не обращать внимание на свойства регистров и исключить вероятность допущения горькой оплошности при обновлении информационных баз, заменив типы регистраторов основной конфигурации типами конфигурации поставщика. Для программных продуктов, имеющих в своем составе метаданных документ "Корректировка регистров"("Корректировка записей регистров").

05.12.2017    30969    itriot11    34    

СКД - наборы данных и связи между ними, создание собственной иерархии, вложенные отчеты

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Набор данных объект. Использование в схеме компоновки нескольких наборов данных. Различные варианты связи наборов: объединение, соединение. Использование иерархии в отчетах на СКД. Создание собственной иерархии, иерархия детальных записей. Использование вложенных схем в отчетах на СКД.

26.07.2019    111672    ids79    18    

СКД - использование расширений языка запросов, секция ХАРАКТЕРИСТИКИ

Практика программирования v8 v8::СКД Бесплатно (free)

Автоматическое и не автоматическое заполнение полей компоновки данных. Использование расширений языка запросов для СКД «{…}», секция ВЫБРАТЬ, секция ГДЕ, параметры виртуальных таблиц. Автоматизированное использование дополнительных данных в запросе: секция ХАРАКТЕРИСТИКИ.

17.07.2019    50132    ids79    27    

Регистры сведений. За кулисами

Практика программирования v8 1cv8.cf Бесплатно (free)

Небольшие заметки по внутреннему устройству регистров сведений.

09.07.2019    35039    YPermitin    15    

"Меньше копипаста!", или как Вася универсальную процедуру писал

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Программист Вася разбирает подход создания универсальных методов на примере программного вывода СКД.

04.07.2019    22841    SeiOkami    53    

Работа с настройками системы компоновки данных

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

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

02.07.2019    88619    ids79    18    

Регистры накопления. Виртуальные таблицы. Часть №2: "Остатки" и "Остатки и обороты"

Практика программирования v8 1cv8.cf Бесплатно (free)

Описание работы платформы 1С:Предприятие 8.2 с виртуальными таблицами регистров накопления "Остатки" и "Остатки и обороты". Анализ SQL-запрос при работе с виртуальными таблицами

22.05.2019    47189    YPermitin    9    

1Script.Web. Интернет-приложения на языке 1С

Практика программирования v8 Бесплатно (free)

Запросы рынка таковы, что любое современное клиент-серверное приложение должно иметь веб-интерфейс. Почему бы не писать такие приложения на языке 1С? Андрей Овсянкин расскажет о возможностях разработки веб-приложений на базе 1Script, рассмотрит перспективы этого направления и в качестве демонстрации покажет «боевое» веб-приложение на новом движке – кроссплатформенную консоль администрирования парка кластеров 1С.

20.05.2019    22650    Evil Beaver    33    

Регистры накопления. Структура хранения в базе данных

Практика программирования v8 1cv8.cf Бесплатно (free)

Структура хранения регистров накопления в базе данных для платформы 1С:Предприятие 8.x. Первая часть в серии публикаций.

16.05.2019    66877    YPermitin    31