Программирование в Штрих-М Кассир 5

Публикация № 1208354

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

Штрих-М Кассир 5 программирование

Методы и свойства для программирования в Штрих-М Кассир 5.

15

 

Введение

Основная задача этого материала - это ознакомление с методиками программирования в программе Штрих-М Кассир 5.

 

Пред обработчики в Штрих-М Кассир 5

    1. Случаи применения

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

    1. Синтаксис для пред обработчиков

 

Для того чтобы пред обработчики стали работать, необходимо помещать обработки в каталог «ExtForms\ LogicalModules», наименование обработки не имеет никакого значения, расширения "epf".

Схематическое изображение обработки:

Обязательные реквизиты «Формы» в обработке, показаны ниже на рисунке:

 

Чтобы программа увидела ваш обработчик ее нужно инициализировать, рассмотрим на примере функции «Функция ЗакрытьЧек(Отмена = 0) Экспорт»  из обработки «Регистрация»:

Процедура ИнициализироватьМодуль() экспорт

       Если Метаданные.Имя = "ШтрихМ_Кассир" Тогда                                 

              МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").НазначитьОбработчик("Регистрация.ЗакрытьЧек.ПредОбработка", ЭтаФорма, Неопределено);

       КонецЕсли;

КонецПроцедуры

и соответственно при завершении работы кассира деинициализировать:

Процедура ДеИнициализироватьМодуль() экспорт

       Если Метаданные.Имя = " ШтрихМ_Кассир " Тогда

              МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").СнятьОбработчик("Регистрация.ЗакрытьЧек.ПредОбработка", ЭтаФорма, Неопределено);

       КонецЕсли;

КонецПроцедуры

Причем  Метаданные.Имя обязательно должны быть сравнимы с именем «ШтрихМ_Кассир», иначе программа не инициализирует вашу доработку.

И наконец вызов самой функции:

Функция Регистрация_ЗакрытьЧек_ПредОбработка(Отмена) Экспорт

       Обработчик = МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").ПолучитьОбработчик("Регистрация.ЗакрытьЧек.ПредОбработка", _Источник, ЭтаФорма);

       Если Обработчик <> Неопределено Тогда

                      _РезультатВызова =

                      Обработчик.Регистрация_ЗакрытьЧек_ПредОбработка(Отмена);

                      Если Обработчик._Отказ Тогда

                                      Возврат _РезультатВызова;

                      КонецЕсли;

       КонецЕсли;

…

КонецФункции

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

Если присвоить переменной «Обработчик._Отказ»  истину, в этом случае функция в основном теле программы после обработчика выйдет из функции, т.е. пропустит ее выполнение.

 

    1. Доступ к основной форме (источник)

 

Иногда необходимо обратиться к некоторым методам чтобы узнать или изменить что-либо на форме или в содержании программы, для этого есть возможность обратиться к функциям основной программы, если они имеют реквизит «Экспорт», Примеры:

_Источник.ФункцияФормыРегистрации_Вниз()

– спускает курсор вниз по табличному полю

_Источник.ФункцияФормыРегистрации_ПросмотрПечатьЧека()

– просмотр и печать закрытого чека

 

Обращение к переменным основной программы, примеры:

_Источник. ГлавноеПолеВвода 

Значение главного поля ввода

_Источник.СоставЧека

– Состав чека в виде табличного значения

 

    1. Способы передачи данных

 

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

Сохранение данных-

ИмяФайла = Кассир5_DataAccess.КаталогВнешнихКомпонент + "data.ini";

ЗначениеВФайл(ИмяФайла,ПАР);

ПАР – это переменная или структура данных

 

Загрузка данных-    

Перем ПАР;

       ПАР = Новый Структура;

       ПАР.Вставить("Имя1");

      …

       ПАР.Вставить("ИмяN");



       //Считать из файла

       ИмяФайла = Кассир5_DataAccess.КаталогВнешнихКомпонент + "data.ini";

       Файл = Новый Файл(ИмяФайла);

       Если Файл.Существует() Тогда

                      ФайлЗагрузки = Новый ТекстовыйДокумент();

                      Попытка

                                      ФайлЗагрузки.Прочитать(ИмяФайла, КодировкаТекста.ANSI);

                                      ФайлЗагрузки = Неопределено;

                      Исключение

                                      Возврат ПАР;

                      КонецПопытки;

                     

                      ПолученноеЗначение = ЗначениеИзФайла(ИмяФайла);

                      Для каждого эл из ПолученноеЗначение Цикл

                                      Попытка

                                                      ПАР[эл.Ключ] = эл.Значение;

                                      Исключение

                                      КонецПопытки;               

                      КонецЦикла;      

                      Возврат ПАР;

       КонецЕсли;

       Возврат ПАР;

 

Еще один метод, расположить все функции в одной обработке, а переменные сохранять на форме.

 

    1. Пример
Процедура ДеИнициализироватьМодуль() экспорт

       Если Метаданные.Имя = "ШтрихМ_Кассир" Тогда

              МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").СнятьОбработчик("Регистрация.ФункцияФормыРегистрации_ПродолжитьОтложенныйЧек.ПредОбработка", ЭтаФорма, Неопределено);

       КонецЕсли;

КонецПроцедуры// ДеИнициализироватьМодуль()



Процедура ИнициализироватьМодуль() экспорт

       Если Метаданные.Имя = "ШтрихМ_Кассир" Тогда                                 

              МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").НазначитьОбработчик("Регистрация.ФункцияФормыРегистрации_ПродолжитьОтложенныйЧек.ПредОбработка", ЭтаФорма, Неопределено);

       КонецЕсли;

КонецПроцедуры // ИнициализироватьМодуль()



Функция Регистрация_ФункцияФормыРегистрации_ПродолжитьОтложенныйЧек_ПредОбработка() Экспорт

       Обработчик = МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").ПолучитьОбработчик("Регистрация.ФункцияФормыРегистрации_ПродолжитьОтложенныйЧек.ПредОбработка", _Источник, ЭтаФорма);

       Если Обработчик <> Неопределено Тогда

                      Обработчик.Регистрация_ФункцияФормыРегистрации_ПродолжитьОтложенныйЧек_ПредОбработка();

       КонецЕсли;      

      

       Если ВыполнитьВнешнююОбработку("ОбщиеФункции","Константы_РежимПАЕ_Получить") Тогда

                      //И если карта на приборе тогда ф-ция запрещена

                      ЭтаФорма._Отказ = Истина;

                      Возврат Истина;

       КонецЕсли;

      

КонецФункции

 

Пост обработчики в Штрих-М Кассир 5

    1. Случаи применения

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

    1. Синтаксис для пост обработчиков

 

Для того чтобы пред обработчики работали необходимо помещать обработки в каталог «ExtForms\ LogicalModules», наименование обработки не имеет никакого значения.

Схематическое изображение обработки:

Обязательные реквизиты «Формы» в обработке, показаны ниже на рисунке:

 

Чтобы программа увидела ваш обработчик ее нужно инициализировать, рассмотрим на примере функции «Функция ЗакрытьЧек(Отмена = 0) Экспорт»  из обработки «Регистрация»:

Процедура ИнициализироватьМодуль() экспорт

       Если Метаданные.Имя = "ШтрихМ_Кассир" Тогда                                 

              МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").НазначитьОбработчик("МодульПриложения.ПриНачалеРаботыСистемы.ПостОбработка", ЭтаФорма, Неопределено);

       КонецЕсли;

КонецПроцедуры

 

 и соответственно при завершении работы кассира деинициализировать:

Процедура ДеИнициализироватьМодуль() экспорт

       Если Метаданные.Имя = "ШтрихМ_Кассир" Тогда

       МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").СнятьОбработчик("МодульПриложения.ПриНачалеРаботыСистемы.ПостОбработка", ЭтаФорма, Неопределено);

       КонецЕсли;

КонецПроцедуры

 

Причем  Метаданные.Имя обязательно должны быть сравнимы с именем «ШтрихМ_Кассир», иначе программа не инициализирует вашу доработку.

И наконец вызов самой функции:

Функция ПриНачалеРаботыСистемы_ПостОбработка() Экспорт

      

       Обработчик = МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").ПолучитьОбработчик("МодульПриложения.ПриНачалеРаботыСистемы.ПостОбработка", _Источник, ЭтаФорма);

       Если Обработчик <> Неопределено Тогда

                      Обработчик.ПриНачалеРаботыСистемы_ПостОбработка();

       КонецЕсли;

…

КонецФункции

 

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

 

    1. Доступ к основной форме (источник)

 

Иногда необходимо обратиться к некоторым методам чтобы узнать или изменить что-либо на форме или в содержании программы, для этого есть возможность обратиться к функциям основной программы, если они имеют реквизит «Экспорт», Примеры:

_Источник.ФункцияФормыРегистрации_Вниз() 

– спускает курсор вниз по табличному полю

_Источник.ФункцияФормыРегистрации_ПросмотрПечатьЧека()

– просмотр и печать закрытого чека

 

Обращение к переменным основной программы, примеры:

_Источник. ГлавноеПолеВвода

Значение главного поля ввода

_Источник.СоставЧека

– Состав чека в виде табличного значения

 

    1. Способы передачи данных

 

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

Сохранение данных-

ИмяФайла = Кассир5_DataAccess.КаталогВнешнихКомпонент + "data.ini";

ЗначениеВФайл(ИмяФайла,ПАР);

ПАР – это переменная или структура данных

 

Загрузка данных-    

Перем ПАР;

       ПАР = Новый Структура;

       ПАР.Вставить("Имя1");

      …

       ПАР.Вставить("ИмяN");



       //Считать из файла

       ИмяФайла = Кассир5_DataAccess.КаталогВнешнихКомпонент + "data.ini";

       Файл = Новый Файл(ИмяФайла);

       Если Файл.Существует() Тогда

                      ФайлЗагрузки = Новый ТекстовыйДокумент();

                      Попытка

                                      ФайлЗагрузки.Прочитать(ИмяФайла, КодировкаТекста.ANSI);

                                      ФайлЗагрузки = Неопределено;

                      Исключение

                                      Возврат ПАР;

                      КонецПопытки;

                     

                      ПолученноеЗначение = ЗначениеИзФайла(ИмяФайла);

                      Для каждого эл из ПолученноеЗначение Цикл

                                      Попытка

                                                      ПАР[эл.Ключ] = эл.Значение;

                                      Исключение

                                      КонецПопытки;               

                      КонецЦикла;      

                      Возврат ПАР;

       КонецЕсли;

       Возврат ПАР;

 

Еще один метод, расположить все функции в одной обработке, а переменные сохранять на форме.

 

    1. Пример
Процедура ДеИнициализироватьМодуль() экспорт

       Если Метаданные.Имя = "ШтрихМ_Кассир" Тогда

              МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").СнятьОбработчик("Регистрация.ЗакрытьЧек.ПостОбработка", ЭтаФорма, Неопределено);

       КонецЕсли;

КонецПроцедуры// ДеИнициализироватьМодуль()



Процедура ИнициализироватьМодуль() экспорт

       Если Метаданные.Имя = " ШтрихМ_Кассир " Тогда                                 

              МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").НазначитьОбработчик("Регистрация.ЗакрытьЧек.ПостОбработка", ЭтаФорма, Неопределено);

       КонецЕсли;

КонецПроцедуры // ИнициализироватьМодуль()



Функция Регистрация_ЗакрытьЧек_ПостОбработка(Отмена) Экспорт

       Обработчик = МенеджерОбъектов.ПолучитьОбщийОбъект("LogicalModules").ПолучитьОбработчик("Регистрация.ЗакрытьЧек.ПостОбработка", _Источник,ЭтаФорма);

       Если Обработчик <> Неопределено Тогда

                      //Обработчик._РезультатВызова = внРезультат;

                      _РезультатВызова =

                      Обработчик.Регистрация_ЗакрытьЧек_ПостОбработка(Отмена);

                      Если Обработчик._Отказ Тогда

                                      Возврат _РезультатВызова;

                      КонецЕсли;

       КонецЕсли;

***              

КонецФункции

 

 

 

Добавление кнопок в меню «Супервизор»

    1. Случаи применения

В некоторых случаях необходимо получить какой-то отчет, отправить на печать что-либо или же задать свои константы. Для этого есть технология добавления копок в меню «Супервизора».

    1. Как использовать, синтаксис содержимого

Во первых в папке ExtFiles создать файл «s_visor.ini», примерное содержимое:

[общие]

имя кнопки=Выгрузка Тов

[Настройка выгрузки]

функция=Data/btn1.1s

И выглядеть это будет так, для строки «имя кнопки=Выгрузка Тов» :

для строки «[Настройка выгрузки]» :

для строки «функция=Data/btn1.1s» :

Затем в папке «ExtForms» создадим каталог «Data» со следующим содержимым:

Содержимое файла btn1.1s

МодульОбмена = ВнешниеОбработки.Создать(Кассир5_DataAccess.КаталогВнешнихКомпонент + "Data\МодульСервиса.epf");

Если МодульОбмена <> Неопределено Тогда

                АктивнаяФорма = Неопределено;

                МодульОбмена.ПолучитьФорму("ФормаНастройки").ОткрытьМодально();

                АктивнаяФорма = ЭтаФорма;

КонецЕсли;

Обработка «МодульСервиса.epf», ее архитектура

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

 

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

    1. Случаи применения

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

    1. Как расположить и синтаксис функции

Зайдем в Кассир 5 под правами администратора, в меню «Супервизора» перейдем в «Настройка»:

Затем в «Настройка формы регистрации»

Затем нажмем кнопку «>>»

В появившемся окне, добавим кнопку   правой кнопкой мыши «добавить кнопку», например «сертификат»

На добавленной кнопке нажмем правой кнопкой мыши «изменить», выбираем функцию

Сперва ее создадим, 

Заполним внутреннее содержимое, в данном случае это функция из обработки регистрация:

После сохранения функции, подключим функцию к кнопке, т.е. подключим.

Затем нажмем выход, «Esc»   и нажмем «Да», т.е. сохранить настройки.

    1. Редактирование и создание кнопок

Кнопки можно создавать через редакторы BMP или PNG и затем в настройке заходить в «Кнопки»

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

Обязательно запомнить ее имя, а также заполнить значения картинок

На примере кнопки «Пром итог», нужно заполнить те расширения, в которых будет использоваться ваша кнопка, также это сделать для вариантов «Картинка нажатая», «Картинка недоступная», «Картинка активная»

 

 

Описание каталогов в папке «ExtForms»

В папке «ExtForms» есть следующие каталоги, см.ниже:

Каталог «AddOutputDev» - работа с дисплеями

Каталог «DataExchange» - загрузка и выгрузка файлов

Каталог «DCTerminals» - работа с терминалами данных

Каталог «Documents» - работа с документами

Каталог «Egais» - работа с ЕГАИС

Каталог «ExternalDB» - работа с базы данными(DBF, SQL)

Каталог «FPrinters» - работа с принтерами(ФР)

Каталог «LblComplex» - работа с весами, в которые можно загрузить товары.

Каталог «LogicalModules» - работа с дополнительными обработками

Каталог «Reports» - работа с отчетами

Каталог «Scales» - работа с весами

Каталог «Scanners» - работа с весами

Каталог «ShtrihPayMan.Modules» - работа с менеджером оплат

Каталог «Update» - работа с обновлением

Каталог «VideoControl» - работа с видео объектами наподобие кэшконтрола.

Данные каталоги имеют содержимое в виде обработок, так что у любого программиста 1С есть возможность изменить код.

 

Изменения самой конфигурации Штрих-М Кассир 5

Если вы купили типовую конфигурацию Штрих-М Кассир-5, есть возможность ее редактирования, единственное что при обновлении вам придется переносить ваши доработки, причем возможно что некоторые придется еще переписывать.

 

Заключение.

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

Изменения интерфейса, изменения функционала – это сила данного метода.

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

 

Дополнительные ресурсы:

https://kkm.solutions/wiki/doku.php?id=кассир5:руководствопрограммиста

https://kkm.solutions/produkty/roznichnaya-torgovlya/shtrikh_m_kassir_5_0/

https://www.shtrih-m.ru/catalog/avtomatizatsiya-torgovli/shtrikh-m-kassir-5/

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

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. Van2507 5 18.03.20 15:40 Сейчас в теме
Интересная статья. Есть один вопрос. При заполнении содержимого функции на добавленной кнопки можно использовать только уже имеющиеся функции в конфигурации, точнее можно ли написать свою функцию в этом окне, или нужно указывать именно ссылку на функцию?
2. Ignatov_mu 11 24.03.20 23:09 Сейчас в теме
Можно описать полностью свою функцию.
Оставьте свое сообщение

См. также

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

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

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

27.01.2020    9637    ids79    26       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

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

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

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

15.01.2020    11205    John_d    22       

Последовательности событий. Шпаргалка

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

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

30.12.2019    7162    kuzyara    33       

Онлайн-курс «Автоматизация процессов управления МТО: методика сбора и формализации требований» с 1 апреля по 13 мая 2020 года. Промо

Цель курса - повысить полноту и качество сбора и формализации требований к автоматизации процессов управления материально-техническим обеспечением. Курс основан на процессном подходе, позволяет в полном объеме выявить и учесть все факторы, влияющие на специфику процессов управления МТО. Участники курса получают теоретические знания в области организации процессов управления МТО и готовый инструментарий для сбора и формализации требований по автоматизации этих процессов (шаблоны, опросники, модели).

40000 рублей

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

Статья Программист Стажер Нет файла v8 Бесплатно (free) Практика программирования

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

02.12.2019    10944    YPermitin    72       

Екатеринбург.Online: Голосование продолжается Промо

Продолжается голосование за доклады на INFOSTART MEETUP Екатеринбург.Online! Лучшие из них попадут в окончательную программу онлайн-митапа! Присоединяйтесь к голосованию и покупайте билеты - 3 000 рублей за 8 часов продуктивной пятницы!

3000

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

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

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

05.09.2019    31302    ids79    50       

Лучшие программы за прошедший месяц Промо

Инфостарт подготовил ТОП-25 самых продаваемых и популярных на текущий момент программ. При формировании списка учитывается аналитика продаж и запросы клиентов за последний месяц.

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

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

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

03.09.2019    19429    YPermitin    80       

Онлайн-интенсив "1C:Предприятие для программистов: Бухгалтерские задачи" с 22 июня по 8 июля 2020 г. Промо

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

4900 рублей

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

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования Универсальные функции Разработка

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

17.08.2019    22265    ids79    16       

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

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

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

08.08.2019    43878    ids79    36       

DevOps для 1С. Онлайн-курс проходит с 16 апреля по 11 июня 2020 года. Промо

Данный онлайн-курс предусматривает изучение процессов DevOps, их применение при разработке на платформе 1С. В результате прохождения онлайн-курса вы сможете: настроить ПО необходимое для проведения проверок и тестирования, создавать сценарии тестирования и объединять их в комплексные процессы, создавать скрипты для автоматизации процессов DevOps.

12000 рублей

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

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

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

02.08.2019    22296    avalakh    21       

Базовый курс для начинающих 1С-программистов. Онлайн-интенсив со 2 июня по 2 июля 2020 г. Промо

Данный онлайн-курс является начальной ступенью по изучению базовых принципов программирования в системе “1С:Предприятие” и предназначен для обучения 1С-программированию “с нуля”.

4500-9500 рублей

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

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

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

26.07.2019    34356    ids79    11       

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

Статья Программист Нет файла v8 v8::СКД Бесплатно (free) Инструментарий разработчика Практика программирования

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

17.07.2019    23869    ids79    27       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

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

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

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

09.07.2019    18268    YPermitin    13       

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

Статья Программист Стажер Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования Разработка

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

04.07.2019    14809    SeiOkami    49       

1C:Предприятие для программистов: Расчетные задачи (зарплата). Онлайн-интенсив с 01 по 17 июня 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для автоматизации периодических расчетов, а именно - для расчета зарплаты. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Зарплата и управление персоналом” и прочих прикладных решений, в которых реализован функционал расчета зарплаты.

4900 рублей

Создание отчетов с помощью СКД - основные понятия и элементы

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

Основные принципы работы СКД. Понятия схемы компоновки и макета компоновки. Описание основных элементов схемы компоновки: наборы данных, поля, вычисляемые поля, ресурсы, параметры.

25.06.2019    36838    ids79    17       

Многопоточное ускорение однопользовательских нагрузок в 1С + Microsoft SQL Server 2017

Статья Программист Нет файла v8 v8::Запросы Бесплатно (free) Практика программирования Производительность и оптимизация (HighLoad)

Взаимодействие с Microsoft SQL Server нередко вызывает трудности у 1С-ников, а потому интересны любые моменты, связанные с его использованием. О своем опыте работы с новым SQL Server 2017 участникам конференции Infostart-2018 рассказал директор ООО «Аналитика софт» Дмитрий Дудин.

11.06.2019    19168    dmurk    144       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

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

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

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

16.05.2019    31753    YPermitin    30       

Выполнение внешней обработки в фоновом задании

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

Подробное описание подхода к созданию длительной операции на основе внешней обработки. Реализация протестирована на 1С 8.3.12.1714 (x64).

11.05.2019    20900    Eret1k    23       

Базовый курс по обмену данными в системе 1С:Предприятие. Онлайн-интенсив с 12 по 28 мая 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, обеспечивающих обмен данными между различными прикладными 1С-решениями и взаимодействие с другими информационными системами. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”.

5500 рублей

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

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Разработка

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

25.04.2019    12064    m-rv    2       

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

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Перенос данных из 1C8 в 1C8 Разработка

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

16.04.2019    15450    m-rv    16       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

О расширениях замолвите слово...

Статья Программист Стажер Нет файла v8 Бесплатно (free) Практика программирования Разработка

О чём стоит задуматься при принятии решения о создании расширения конфигурации…

07.04.2019    26304    ellavs    125       

Git-репозитории для 1С-кода (опыт использования при небольших проектах)

Статья Программист Стажер Нет файла v8 Windows Бесплатно (free) Практика программирования Разработка

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

28.03.2019    21110    ellavs    83