А1Э_Механизмы - паттерн publisher/subscriber, расширение расширений, БСП без головной боли и прочие вкусности

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

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

Менеджер пакетов механизмы А1 pub/sub паттерн

Вы хотели бы иметь возможность разработать функциональный блок, а потом подключать его к документам одной строкой кода, без многочисленных вставок в модули и формы? А как насчет возможности доработки расширений другими расширениями? Как насчет возможности создавать механизмы с хуками, на которые смогут подписаться другие разработчики и дополнить их? В нормальных ЯП одним из способов реализации всего этого является паттерн "Издатель/подписчик" (publisher/subscriber, pub/sub). В этой статье мы поговорим о том, как сделать это в 1С.
 
 Зачем все это?

Эта статья будет выполнена в виде пошаговой инструкции, в рамках которой вы сможете сделать расширение, которое при открытии ЛЮБОЙ карточки (формы элемента) будет выводить сообщение "Привет мир!". Это очень упрощенный пример, но мне он кажется необходимым для понимания того, как все это работает.

ВАЖНО: все нижеописанное работает на конфигурациях на управляемых формах в режиме совместимости 8.3.12 и выше. В продуктивном окружении рекомендуется использовать 8.3.14 для повышения производительности. Установка и выполнение протестированы на конфигурации Бухгалтерия Предприятия 3.0.82.24 на платформе 8.3.18.1289, но должны работать на платформе 8.3.13+ и любой конфигурации, включая самописные.

 

Итак, приступим:

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

2. Откройте её с помощью "Файл - Открыть". В появившемся списке пакетов (расширений) отметьте флажком "А1Э" и нажмите "Установить отмеченные". В результате должно быть выдано сообщение что расширение А1Э соответствующей версии установлено.

 
 Картинка для наглядности
 
 Про А1Э

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

3. Перезайдите в информационную базу. Если база была запущена через веб-соединение, то потребуется отказаться от него и зайти в базу через файловый/клиент-серверный вариант напрямую. Снова откройте менеджер пакетов и перейдите на страницу "Механизмы". Там должна быть надпись "Механизмы готовы к установке." и кнопка "Установить". Нажимаем и ждем - процедура может занять несколько минут. В результате этой процедуры в конфигурации появится расширение А1ЭМ (Экспортные Механизмы).

 
 Картинка для наглядности
 
 Про А1ЭМ

4. На этом подготовка завершена! Пришло время писать код. Откроем конфигуратор, создадим новое расширение и в нем два общих модуля: "Расш1_А1СписокМеханизмов" и "Расш1_ПриветМир" (если не хотите копипастить, можно просто скачать расширение. В код модулей вставим следующее:

Расш1_А1СписокМеханизмов

//Название модуля критично - подстрока А1СписокМеханизмов сообщает механизмам, что в этом модуле объявляются и подключаются механизмы. 
//Положение подстроки некритично, название модуля может содержать произвольный префикс/суффикс.

//Модуль ДОЛЖЕН содержать две функции - "ДобавитьМеханизмы" и "ДобавитьОбъекты", каждая принимает по одному параметру.

Функция ДобавитьМеханизмы(СписокМеханизмов) Экспорт
	//Эта функция добавляет механизм "Расш1_ПриветМир", который по умолчанию располагается в одноименном общем модуле.
	А1Э_Механизмы.Добавить(СписокМеханизмов, "Расш1_ПриветМир");
КонецФункции

Функция ДобавитьОбъекты(СписокОбъектов) Экспорт
	//Эта функция подключает (активирует) механизм для определенного объекта или списка объектов.
	//А1Э_Механизмы.Адресация__ВсеОбъекты() - специальная константа для подключения механизма ко всем объектам системы.
	А1Э_Механизмы.Подключить(СписокОбъектов, А1Э_Механизмы.Адресация__ВсеОбъекты(), "Расш1_ПриветМир");	
КонецФункции

Расш1_ПриветМир 

//Модуль ДОЛЖЕН содержать функцию "НастройкиМеханизма" без параметра, возвращающую структуру настроек механизма.
//Настоятельно рекомендуется получать структуру методом А1Э_Механизмы.НовыйНастройкиМеханизма().
Функция НастройкиМеханизма() Экспорт
	Настройки = А1Э_Механизмы.НовыйНастройкиМеханизма();
	
	//Эта строка кода добавляет обработчик события "ФормаПриСозданииНаСервере", которое возникает в процедуре "ПриСозданииНаСервере" формы.
	//Все обработчики объектов ("ПередЗаписью", "ПриЗаписи", "ОбработкаПроведения" и т.д.) создают события с таким же названием.
	//Все обработчики форм ("ПриСозданииНаСервере", "ПриОткрытии" и т. д.) создают события с префиксом "Форма" перед типовым именем.
	
	//Значение <Истина> означает что обработчик расположен по умолчанию - в том же модуле, что и сам механизм, и имеет название, равное имени события.
	//Если вместо <Истина> указать строку, то механизмы воспримут её как полное имя функции, которая должна быть вызвана.
	Настройки.Обработчики.Вставить("ФормаПриСозданииНаСервере", Истина);
	
	Возврат Настройки;
КонецФункции

//Обработчик события. Должен удовлетворять нескольким требованиям:
//1. Должен быть функцией. Механизмы используют "Вычислить()" для вызова, так как 1С не поддерживает передачу функций как переменных.
//"Выполнить()" не используется т. к. недоступно в веб-клиенте.
//2. Аргументы функции соответствуют аргументам типового обработчика, но первым аргументом всегда выступает объект/форма, вызвавшая события (все остальные сдвинуты соответственно).
Функция ФормаПриСозданииНаСервере(Форма, Отказ, СтандартнаяОбработка) Экспорт
	//А1Э_Формы.ТипФормы(Форма) - удобная функция, позволяющая различить разные формы.
	Если А1Э_Формы.ТипФормы(Форма) <> "ФормаЭлемента" Тогда Возврат Неопределено; КонецЕсли;
	
	Сообщить("Привет, мир!");	
КонецФункции 
5. Применяем изменения и наслаждаемся - все работает. И ни строки кода в модулях формы! 
 
 Скриншот

6. Если Вы хотите использовать механизмы в продуктивной среде, рекомендуется использовать конфигурацию в режиме совместимости 8.3.14+ и установить расширение А1Д (используйте менеджер пакетов). В этом случае перечень механизмов и их обработчиков будет храниться в параметре сеанса, а не в функции с повторным использованием, и не будет перевычисляться каждые 15-20 минут.

7. В анонсе статьи я обещал "БСП без забот". Это несколько выходит за рамки простого примера, но желающих прошу под кат:

 
 Подключаемые команды БСП через А1Э_Механизмы.

 0.1. Эта инструкция рассчитана на то, что у Вас уже есть конфигурация с БСП, и Вы просто хотите подключить крутые фишки из БСП к своим документам. Если вы хотите иметь крутые фишки без БСП, то об этом будет следующая статья.

0.2. Если Ваши документы находятся в расширениях, то А1ЭМ не сможет подключить механизмы к ним. Алгоритм подключения механизмов к метаданным расширений будет описан в последующей статье.

0.3. Мы будем рассматривать подключение функциональности БСП "Подключаемые команды" к справочнику "Календари" ("Графики работы") типовой Бухгалтерии Предприятия.

1. Для начала нужно установить расширение "А1БСП" с помощью менеджера пакетов.

2. В созданное в базовом туториале расширение в функцию Расш1_А1СписокМеханизмов.ДобавитьОбъекты() добавим одну строку:

А1Э_Механизмы.Подключить(СписокОбъектов, "Справочник.Календари", "А1БСП_ПодключаемыеКоманды");

3. Профит! Можно создавать процедуру ДобавитьКомандыПечати, процедуру Печать и все как обычно - кнопки появятся где надо! 

 

Скачать файлы

Наименование Файл Версия Размер
Менеджер пакетов

.epf 14,81Kb
30
.epf 14,81Kb 30 Скачать бесплатно
ПриветМир - простой пример

.cfe 8,32Kb
22
.cfe 8,32Kb 22 Скачать бесплатно
ПриветМир - пример для пункта 7

.cfe 9,84Kb
21
.cfe 9,84Kb 21 Скачать бесплатно

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. milkers 2476 07.04.21 12:37 Сейчас в теме
Ставлю плюс за проделанную работу. Но прежде всего хочу напомнить коллегам о безопасности кода. Перед внедрением подобных механизмов придется потратить кучу времени на проверку кода на вредоносные вкрапления. Тем более, что часть кода может подгружаться из внешних источников.
Shmell; Rustig; infosoft-v; +3 Ответить
2. Enigma 228 07.04.21 12:57 Сейчас в теме
(1) На всякий случай сразу уточняю, что все, что скачивается, выложено на githib под открытой лицензией MIT. Можно посмотреть там, или же скачать и открыть в конфигураторе (есть отдельная кнопка).
9. pparshin 333 14.04.21 12:32 Сейчас в теме
(1) Согласен по поводу безопасности. Считаю, что в тексте публикации должны быть предупреждения по поводу загрузки стороннего кода. А на github может быть выложено что угодно. К тому код не "может подгружаться", а подгружается в обязательном порядке в пункте 2.
10. Enigma 228 14.04.21 13:11 Сейчас в теме
(9) Согласен, отредактирую статью с уточнением.
3. noprogrammer 205 12.04.21 09:48 Сейчас в теме
Работа конечно продела очень большая, но, что бы во всем этом разобраться........

Общий модуль "А1Э_Перечисления", внутри модуль:

#Если НЕ Клиент Тогда
Функция ИмяЗначения(ПеречислениеСсылка) Экспорт
ИмяПеречисления = ПеречислениеСсылка.Метаданные().Имя;
ИндексЗначения = Перечисления[ИмяПеречисления].Индекс(ПеречислениеСсылка);
ИмяЗначения = Метаданные.Перечисления[ИмяПеречисления].ЗначенияПеречисления[ИндексЗначения].Имя;
Возврат ИмяЗначения;
КонецФункции
#КонецЕсли



Весь модуль заменяется одной строчкой кода
#Если НЕ Клиент Тогда
Функция ИмяЗначения(ПеречислениеСсылка) Экспорт
Возврат xmlСтрока(ПеречислениеСсылка);
КонецФункции
#КонецЕсли
Alex17; portwein; mozz; lolipoka; Enigma; NoRazum; +6 Ответить
4. NoRazum 28 12.04.21 10:29 Сейчас в теме
(3)
xmlСтрока


Всегда пользовался первым вариантом.
Благодарю.
Век живи век учись
6. Enigma 228 12.04.21 10:45 Сейчас в теме
(3) Замечу, что приведенный выше код был взят с сайта ИТС. Но я согласен, что Ваш вариант лучше. Исправлю в ближайшей версии.
5. Ambakollajder 12.04.21 10:35 Сейчас в теме
"Все нужное просто, все сложное не нужно." - простым и нужным такое может сделать только платформа 1С, вычислить выполнить, запустить в фоне конфигуратор - все это сложно.
7. itoptimum 18 13.04.21 14:02 Сейчас в теме
На самом деле, данная идея может оказаться полезной для оБСПечевания конфигурации на обычных формах как раз за счет отсутствия многих фишек УФ. Прикручивая последние БСП к обычным формам, приходит в голову подобная мысль.)
8. Enigma 228 13.04.21 15:23 Сейчас в теме
(7) К сожалению, весь существующий код завязан на УФ. Я даже не знаю, возможна ли выгрузка обычных форм в XML, чтобы их можно было программно редактировать.
Оставьте свое сообщение

См. также

Модульная (open source) конфигурация "INFOSTART ERP community edition" Промо

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

Учетная модульная конфигурация "INFOSTART ERP community edition" для ведения комплексного учета на предприятии.

31.08.2020    7354    517    33lab    91    

"Откат" данных без транзакций. Расширение для легкого возврата к "исходному" или выбранному состоянию после любых изменений данных

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

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

06.04.2021    1231    30    Алексей Воробьев    12    

Работа с кодом и его выполнение в режиме 1С: Предприятие (обычные формы)

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

С помощью этой простой обработки теперь можно выполнять код не только в конфигураторе. Код в режиме Предприятия имеет вид как в конфигураторе.

11.03.2021    1479    82    Nik_Name    8    

Вызов демонов в 1С

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

Вызываем демонов прямо из 1С!

28.01.2021    6545    153    the1    30    

Генерация кода управляемой формы (декомпиляция элементов) Промо

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

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

29.09.2014    110127    9110    ekaruk    134    

Простая конфигурация для заполнения школьного расписания

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

Решение задачи контрольной работы.

12.12.2020    1709    36    vova-1c    29    

Ввод по строке для управляемых форм

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

Ввод по строке с поиском по номеру телефона и наименованию контрагента с помощью обработчика "АвтоПодбор".

08.10.2020    2149    34    anrahell    1    

Файл тестов для xUnitFor1C: тестирование проведения документов

Тестирование и исправление Прочие инструменты разработчика v8 1cv8.cf Бесплатно (free)

Тестирование проведения документов. Проверяется, что: а) документ проводится; б) движения документа после перепроведения не изменились.

30.06.2020    4893    39    q_i    16    

Получение ссылки из форматированной строки

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

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

05.06.2020    3213    0    VZhulanov    1    

Как сохранить данные табличного поля в табличный документ / файл Excel программно

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

Пример сохранения табличного поля в табличный документ не через ПКМ -> Вывести список, с автоподбором ширины по содержимому.

31.05.2020    5084    0    rpashkovsky    15    

Нейроконструктор

Интеграция Искусственный интеллект (AI) Прочие инструменты разработчика v8 Бесплатно (free)

Изучайте нейронные сети и экспериментируйте вместе с расширением конфигурации "Нейроконструктор". Навыки программирования не требуются.

20.05.2020    11112    147    user1404129    19    

Вывод текста в окно сообщений (Теперь и для 8.2 !!!) Промо

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

Позволяет вывести любой текст набранный с клавиатуры в окно сообщений. Теперь работает для любых конфигураций 1с предприятие!!!

29.05.2009    43027    1251    Ёпрст    208    

Загрузка, редактирование и установка цветовых схем (раскраски кода) в Конфигуратор и EDT

Работа с интерфейсом Прочие инструменты разработчика v8 1cv8.cf Бесплатно (free)

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

14.05.2020    9128    327    CyberCerber    32    

Универсальные инструменты 1С

Универсальные обработки Прочие инструменты разработчика Консоль запросов v8 1cv8.cf Бесплатно (free)

Свободно распространяемый набор универсальных обработок и отчетов в виде расширения для разработки и поддержки, которое работает во ВСЕХ видах клиентских приложений и во всех операционных системах, которые поддерживает платформа 1С:Предприятие, кроме мобильных. Консоль запросов - консоль отчетов - консоль кода - редактор объектов базы данных - удаление помеченных объектов - поиск и удаление дублей - редактор констант - консоль заданий - групповая обработка справочников и документов - динамический список - поиск ссылок на объект - регистрация изменений для обмена данными - структура хранения базы - консоль HTTP запросов-консоль вебсервисов- консоль сравнения данных- информация о лицензиях- загрузка из табличного документа-файловый менеджер-все функции- навигатор по конфигурации-конструктор регулярных выражений-Выгрузка загрузка XML с фильтрами

21.01.2020    39181    2798    cprit    125    

Пример работы MiracleV8.dll в режиме Управляемого приложения (тонкий клиент)

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

Пример конфигурации Управляемое приложение с использованием MiracleV8.dll

09.04.2012    20958    220    Abadonna    26    

Исправление ошибки 1С:Предприятие 7.7/8.0 - 100% загрузка процессора при ожидании блокировки Промо

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

Цель использования: разгрузить процессор, когда два или более пользователей пытаются провести документ. 1С пытается заблокировать таблицы, но делает это без пауз, и загружает процессор на 100%. При этом пользователи практически "встают", и нормальная работа прекращается. Компонента (или патч) позволяет решить эту проблему и нормализовать работу пользователей. Особенно актуально при работе в режиме сервера терминалов.

13.12.2007    54313    7760    romix    79    

v77. Тип данных "Месяц"

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

Нет такого в 1С типа данных. Но если очень хочется...

12.03.2012    10043    6    item    2    

Задача: Программа, выводящая на экран свой исходный код (куайн)

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

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

27.07.2011    11068    344    archie    17    

Информация по реквизитам объекта метаданных на полную глубину

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

Дерево реквизитов объектов метаданных. На всю глубину (т.е. смотрит реквизиты у реквизитов).

10.06.2011    14646    163    kosmo0    5    

Обработка поиска дублей кода. Исходного кода модулей 1С

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

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

12.04.2011    7530    206    bk-81    37    

[Скрипт] Чтение EXIF данных

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

Скрипт на C# для чтения Exif-данных из jpg-файла. Упакован в обработки для 8.1 и 8.2 (управляемые формы)

18.02.2011    23185    282    Душелов    14    

Исполнение кода в модуле формы при разработке в 1С 8.2

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

Немного теории о новом подходе к программированию форм в 1С 8.2 Рассматриваются директивы компиляции процедур и функций, которые определяются в модуле формы.

15.01.2011    27283    166    1cNike    19    

Запрос против рекурсии или разузлование номенклатуры

Практика программирования Учет ТМЦ Учет ТМЦ v8 КА1 Россия БУ Бесплатно (free)

В задаче "разузлования" номенклатуры в БП 1.6 (2.0) покажем , что запрос более эффективен, чем рекурсия.

23.11.2010    52692    840    Ish_2    258    

Выполнение кода C# из 1С

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

Обработка показывает возможности выполнения кода С# из программы 1С.

23.11.2010    12068    252    AlkB    9    

Экспорт встроенных XML-схем описаний типов 1С:Предприятия

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

Экспорт встроенных XML-схем описаний типов 1С:Предприятия

01.11.2010    22603    201    Dmitryiv    7    

Конструктор шаблона подобия для строк

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

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

17.08.2010    14042    35    YVolohov    11    

Коллекционер - упорядочиваем свои файлы.

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

Ещё один менеджер обработок - но для разработчика)

09.04.2010    12419    149    Lancelot-2M    5    

Подсистема хранения файлов

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

Отличия от реализации в типовых: - версионирование - запрет одновременного редактирования файла несколькими пользователями - линковка файлов многие-ко-многим (т.е. один файл может быть прилинкован к нескольким объектам и наоборот) - создание коллекций файлов (например коллекций: типовые договора или унифицированных формы) - возможность типизации файлов (например, факсы могут подсвечиваться при работе синим, а договора зеленым) - одновременный просмотр прилинкованных файлов к нескольким объектам (например, просмотр файлов привязанных к клиенту и к его договорам) - просмотр прилинкованных файлов из форм списка

23.03.2010    6024    761    koreav    32    

[BackgroundWorker] - Фоновые задания в файловом режиме 1С 8.x

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

ActiveX-компонента позволяет выполнять задачи в фоне с индикацией прогресса и возможностью прерывания выполнения. Также работает и клиент/серверном варианте, в качестве альтернативы типовым фоновым заданиям

04.03.2010    24446    417    Душелов    15    

Загрузка из Excel в ТаблицуЗначений 8.1 (с помощью ADO DB)

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

Внешняя обработка для загрузки данных из Excel в ТаблицуЗначений 8.1

19.02.2010    11018    558    dav405    8    

[8.2] Шаблон обработки с индикацией прогресса выполнения (управляемые формы)

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

- Обработка выполняется на сервере - Отображение хода выполнения обработки с расчетом оставшегося времени. - Возможность прерывания выполнения обработка (CTRL + Break)

12.02.2010    27508    1360    Душелов    31    

Загрузка программы НТВ-плюс

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

Загрузка телепрограммы на основные каналы через web-обработку сайта НТВ-плюс. Выбор дней недели, 133 канала любимых передач, оповещения времени наступления любимой передачи, просмотр программы на текущий момент.

08.02.2010    6691    121    maxlenium    15    

Печать произвольной таблицы значений

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

простенькая универсальная процедура для печати произвольной таблицы значений.

29.01.2010    11034    301    Пацталоцци    12    

1c-minder: обработка для создания ментальных карт (mind maps) в 1С:Предприятие 8

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

Обработка позволяет быстро и удобно создавать ментальные карты (mind maps) в виде графических схем. Присутствует возможность сохранения схем в файлах формата .grs, после чего их можно открывать на всех компьютерах, на которых есть установленная "1С:Предприятие 8" или "1С:Работа с файлами". Реализован экспорт в графические форматы (PNG/BMP). Разработка является иллюстрацией механизма программной работы с графической схемой (добавление и изменение элементов схемы).

25.12.2009    21571    983    kharts    29    

Генератор математических задач для первоклашек

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

Написал тут небольшую обработку на 1С 8.1 - генератор математических задач для подготовки ребенка к школе. Смысл - угадать загаданное слово путем решения математических примеров. Пока только сложение/вычитание, но несложно добавить и умножение/деление. Сыну интересно.

08.12.2009    4637    102    iiukolov    15    

Подведем итоги. Нарастающие.

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

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

25.11.2009    43246    383    Ish_2    125    

Хранитель COM - объектов

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

Позволяет сохранять COM - объект между серверными вызовами в 8.2. Сохраняет и получает ссылку на объект в ROT (Running Object Table). БЕТА!

18.11.2009    13381    78    Hadgehogs    14    

Механизм блокирования "некорректных" (запрещенных) проводок

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

Механизм позволяет настроить правила, по которым будут блокироваться указанные НЕКОРРЕКТНЫЕ (запрещенные) корреспонденции... Полезно при вводе информации для "выпрямления рук" у некоторых бухгалтеров после перехода с других бухгалтерских программ :)

14.11.2009    13363    57    KukA.5    50    

Загрузить все данные со всех страниц файла Excel

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

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

11.11.2009    12761    590    Мастер1С    12