Внешние источники данных. Примеры (добавление, изменение, удаление). Реализовано в версии 8.3.5.1068 и позднее

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

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

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

23
В версии платформы 8.3.5.1068 (и позднее) появилась возможность добавления, изменения и удаления данных во внешних источниках программными средствами 1С. Примеры данной возможности представлены в данной статье.

Внешние источники данных (добавление, изменение, удаление) на примерах

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

Для того, чтобы запись во внешние источники стала возможной, компания 1С добавила новые свойства таблицам данных и полям внешних источников:

  • Для всей таблицы - свойство ТолькоЧтениеТолькоЧтение = Истина означает, что изменение данных в этой таблице невозможно;
  • Для отдельных полей таблицы - свойства ТолькоЧтениеРазрешитьNull и ЗначениеЗаполнения:
    • ТолькоЧтение = Истина означает, что изменение данных в этом поле невозможно;
    • РазрешитьNull = Истина означает, что в данное поле может быть записано значение NULL;
    • ЗначениеЗаполнения содержит стандартное значение этого поля (если такое существует).

Эти свойства вы (при описании таблиц вручную) или платформа (при создании таблиц конструктором) можете использовать следующим образом.

  • ТолькоЧтение = Истина устанавливать, например, для представлений (view), таблиц, получаемых на основе выражения (результат функции) и подобных. Данные в таких таблицах изменять нельзя;
  • ТолькоЧтение = Истина указывать для полей, устанавливаемых автоматически (AUTOINCREMENT), вычисляемых полей и подобных. Данные в таких полях изменять нельзя;
  • РазрешитьNull = Истина устанавливать для всех полей, кроме ключевых, и тех, которые во внешнем источнике описаны как NOT NULL;
  • ЗначениеЗаполнения поля устанавливать в том случае, когда во внешнем источнике указано стандартное значение этого поля (значение DEFAULT).

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

  • СоздатьНаборЗаписей() - для необъектных таблиц;
  • Новый метод СоздатьОбъект() - для объектных таблиц.

Соответственно у объектов ВнешнийИсточникДанныхТаблицаНаборЗаписей и ВнешнийИсточникДанныхТаблицаОбъектпоявились новые методы Записать() и Удалить().

Добавление данных

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

Например, при попытке установить значение поля, у которого ТолькоЧтение = Истина, будет выдана ошибка. А при непосредственной записи в базу данных в выражении INSERT такие поля будут пропущены. В остальные поля записываются те значения, которые вы им присвоили. Поэтому значения Null и значения по умолчанию нужно присваивать полям в явном виде.

Далее представлен небольшой пример. В нём данные добавляются в объектную таблицу  shop_feature, у которой существует два поля:

  • id (РазрешитьNull = Истина);
  • name (РазрешитьNull = Истина);   
 мХарактеристика = ВнешниеИсточникиДанных.ИМ.Таблицы.shop_feature.СоздатьОбъект();
 мХарактеристика.id = Код;
 мХарактеристика.name = Наименование;
 мХарактеристика.Записать();

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

С ключевым полем таблицы внешнего источника вы можете поступать следующим образом. Если ключевое поле доступно для изменения, то тогда вы «вручную» задаёте его значение перед записью. Если изменение ключевого поля запрещено, то платформа самостоятельно получит ключ в INSERT или непосредственно после. Вы можете вмешаться в этот процесс с помощью метода УстановитьСсылкуНового() до физической записи (в обработчике события ПередЗаписью) или непосредственно после физической записи (в обработчике события ПриЗаписи).

Изменение данных

При изменении данных обновляются значения всех полей таблицы, у которых ТолькоЧтение = Ложь.

мХарактеристика = ВнешниеИсточникиДанных.ИМ.Таблицы.shop_feature.НайтиПоПолю("id",код);
мОбъект = мХарактеристика.ПолучитьОбъект();
мОбъект.name = Наименование;
мОбъект.Записать();

Если же необходимо записать только некоторые поля, вы можете указать их перечень прямо из встроенного языка с помощью методов УстановитьЗаписываемыеПоля() и ПолучитьЗаписываемыеПоля().

Удаление данных

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

мХарактеристика = ВнешниеИсточникиДанных.ИМ.Таблицы.shop_feature.НайтиПоПолю("id",Код);
мОбъект = мХарактеристика.ПолучитьОбъект();
мОбъект.Удалить();

Транзакции

Чтение данных внешних источников, как и ранее, выполняется вне транзакции, а при записи платформа открывает неявную транзакцию. При этом и чтение, и запись вы можете выполнять и в явных транзакциях с помощью методов объектаВнешнийИсточникДанныхМенеджер:

  • НачатьТранзакцию();
  • ЗафиксироватьТранзакцию();
  • ОтменитьТранзакцию().

Блокировки

Для управления блокировками рекомендуется использовать свойство внешнего источникаРежимУправленияБлокировкойДанных:

  • Автоматический;
  • Управляемый;
  • Автоматический и управляемый.

а также свойство таблицы внешнего источника УровеньИзоляцииТранзакций:

Кроме этого, можно самостоятельно задать уровень блокировок в методе НачатьТранзакцию().

Дополнил типовую статью примерами) Будет больше времени - добавлю больше примеров.

23

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

Комментарии
Избранное Подписка Сортировка: Древо
1. McCoy77 5 30.06.17 10:39 Сейчас в теме
Спасибо за статью!

Но есть проблема.
Исходные данные: необъектный внешний источник ExtTable, с таблицей ORDERS с ключевым полем (ID).
Задача: создавать записи в ExtTable.
Решение:
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	Товары.Ссылка.Дата КАК CREATE_DATE,
	|	ВЫРАЗИТЬ(Товары.Номенклатура.Наименование КАК СТРОКА(100)) КАК DESCRIPTION
	|ИЗ
	|	Документ.РеализацияТоваровУслуг.Товары КАК Товары
	|ГДЕ
	|	Товары.Ссылка = &Ссылка";

	Запрос.УстановитьПараметр("Ссылка", Реализация);
	
	Выборка = Запрос.Выполнить().Выбрать();
	
	Пока Выборка.Следующий() Цикл
	
		Запись = ВнешниеИсточникиДанных.ExtTable.Таблицы.ORDERS.СоздатьМенеджерЗаписи();
		ЗаполнитьЗначенияСвойств(Запись, Выборка);
		Запись.Записать();
		
	КонецЦикла;
Показать


Получаем ошибку:

{Форма.Форма.Форма(58)}: Ошибка при вызове метода контекста (Записать)
Запись.Записать();
по причине:
Ошибка внешней базы данных:
ошибка при выполнении запроса
по причине:
Ошибка ODBC. SQLSTATE: 23000
Номер ошибки: 544
Описание: [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot ins ert explicit val ue for identity column in table 'ORDERS' when IDENTITY_INSERT is set to OFF.


При создании записи в ID ничего не пишу, однако запись не работает. Подскажите, пожалуйста, что неправильно делаю?
2. Denis_CFO 35 30.06.17 11:20 Сейчас в теме
(1) Ему как раз ключевого значения в ключевой колонке и не хватает, видимо.
3. McCoy77 5 30.06.17 13:54 Сейчас в теме
(2) Ключевое значение открыто только на чтение, в скуле стоит Identity = True (соответственно при Insert() значение должно назначаться автоматически). По умолчанию в запись 1С передает 0. Но скулю это явно не нравится, он ругается (см. выше).
Оставьте свое сообщение

См. также

СКД. Отчеты с картинками 178

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

Решение популярных кейсов с картинками в отчетах на СКД.

25.09.2019    4748    YPermitin    24       

Группировка данных в запросе (СГРУППИРОВАТЬ ПО [ГРУППИРУЮЩИМ НАБОРАМ], ИТОГИ ПО [ОБЩИЕ]) 38

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

Для группировки данных в языке запросов 1С существуют конструкции СГРУППИРОВАТЬ ПО [ГРУППИРУЮЩИМ НАБОРАМ], ИТОГИ ПО [ОБЩИЕ]. Для новичков назначение этих конструкций не всегда очевидно, попробуем разобраться на примерах, для чего предназначена каждая из них и в чем отличие от аналогичных конструкций в языке SQL.

19.09.2019    3296    sertak    7       

Количество NULL в запросе 1

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

При определении количества элементов в виде "NULL" в результирующей таблице запроса нам возвращается значение "0".

17.09.2019    1310    toxilamer    18       

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

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

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

05.09.2019    10418    ids79    42       

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

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

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

08.08.2019    10838    ids79    24       

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

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

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

04.07.2019    6322    SeiOkami    48       

Выборка дней рождения 3

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

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

26.06.2019    1369    user654641_yaga_m    6       

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

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

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

25.06.2019    17916    ids79    17       

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

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

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

11.06.2019    11668    dmurk    134       

Почему вообще работает мой запрос? или Ещё раз о планах запросов 45

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

Другие статьи на эту тему объясняют, что такое план выполнения запроса, но не рассказывают о том, как его получить. Эта заметка призвана заполнить этот пробел. Её цель - популяризировать общедоступные инструменты получения плана запроса среди разработчиков, которые ещё не начали их использовать.

10.06.2019    5585    DataReducer    12       

Работа с запросами. Получение последней цены товара из табличной части документа. Несколько вариантов 12

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

На нескольких собеседованиях это спрашивали, решил поделиться. Обычно я использую вариант №2. Остальные варианты нашел в интернете.

05.06.2019    2991    wowik    26       

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

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

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

16.05.2019    17423    YPermitin    27       

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

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

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

11.05.2019    10032    Eret1k    22       

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

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

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

25.04.2019    4912    m-rv    2       

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

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

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

16.04.2019    7488    m-rv    16       

Заметки по SQL: Запрос, получающий изменения ресурса в регистрах сведений по периоду 10

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

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

11.04.2019    2475    IVC_goal    11       

Альтернативный вариант расчета возраста (лет, месяцев, дней) запросом 7

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

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

11.04.2019    2120    lex_hrabovskyi    12       

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

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

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

07.04.2019    16533    ellavs    122       

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

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

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

28.03.2019    12864    ellavs    83       

Трюки с внешними источниками данных 164

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

Некоторые трюки для преодоления ограничений внешних источников данных.

14.03.2019    12977    YPermitin    52       

Добавление отчетов в типовые конфигурации 1С 201

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

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

07.03.2019    23576    ids79    32       

Заметки по SQL: Генерация ряда дат и данные из периодических регистров на каждый день 14

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

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

05.03.2019    2605    IVC_goal    0       

Функциональные опции 1С 8.3 – все возможные варианты использования 170

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

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

22.02.2019    16019    ids79    5       

Информирование пользователя. Работа с объектом «СообщениеПользователю» 249

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

Различные варианты и нюансы использования объекта СообщениеПользователю и другие способы информирования пользователя: без привязки к какой-либо форме и с выводом сообщения в отдельном окне.

15.02.2019    17230    ids79    34       

Возможности типовых шаблонов ограничения доступа на уровне записей (RLS) 163

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

Краткий обзор применения типовых шаблонов ограничения доступа на уровне записей в конфигурациях, созданных на базе БСП: #ПоЗначениям, #ПоНаборамЗначений, #ПоЗначениямРасширенный, #ПоЗначениямИНаборамРасширенный

03.02.2019    15731    ids79    9       

Управляемые блокировки по полям из свойства "Поля блокировки данных" 5

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

Добрый день, коллеги! Хотелось бы поделиться обнаруженной особенностью работы механизма управляемых блокировок, а именно блокировке по полям, указанным в свойстве «Поля блокировки данных».

24.01.2019    3940    mshumakov    1       

Новый подход к обмену данными EnterpriseData 203

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

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

14.12.2018    21669    ids79    72       

Автоматические и управляемые блокировки применительно к типовым конфигурациям 1С 126

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

Основные принципы работы с режимами автоматических и управляемых блокировок в 1С Предприятие 8. Теория и применение в типовых конфигурациях: БП, УТ, ЕРП

10.11.2018    21015    ids79    40       

Отладка запроса с содержимым временных таблиц (управляемые формы) 64

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

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

01.11.2018    11333    Evg-Lylyk    43       

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

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

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

15.10.2018    20600    tormozit    100       

Произвольный код в фоновом режиме 165

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

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

03.09.2018    14718    nikita0832    41       

Приемы работы с СКД: делаем за 5 минут то, на что у других уйдет час 376

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

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

03.09.2018    31229    SergeyN    26       

Основные понятия и механизмы оптимизации клиент-серверного взаимодействия в 1C 144

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

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

23.08.2018    21479    Rain88    42       

Зачем запросу план и кто его выполняет? 175

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

Как определить, почему запрос выполняется слишком долго? Что происходит с запросом на стороне сервера баз данных? В статье приводится объяснение, что такое план запроса и для чего он нужен. А также говорится о том, в чем разница между потоком операторов и потоком данных, как работает оптимизатор и зачем нужна статистика.

09.08.2018    18217    Dem1urg    44       

Повышаем эффективность разработки правил обмена 124

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

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

25.06.2018    19409    olegtymko    47       

Введение в механизм представлений в ЗУП ред. 3 153

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

В нашей организации на первом же телефонном собеседовании на должность разработчика по ЗУП ред. 3 вас обязательно спросят о том, что такое "Представления".

04.06.2018    24558    xrrg    82       

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

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

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

01.06.2018    21301    m-rv    21       

Строим графы средствами 1С (без GraphViz) 42

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

Множество статей на Инфостарте описывают, как работать с компонентой GraphViz, чтобы построить ориентированный граф. Но практически нет материалов, как работать с такими графами средствами 1С. Сегодня я расскажу, как красиво строить графы с минимальным пересечением. Нам этот метод пригодился для отрисовки алгоритмов в БИТ.Финансе, т.к. типовой механизм не устраивал. Еще это может быть полезно для визуализации различных зависимостей: расчета себестоимости, графы аффилированности компаний и т.д. Надеюсь, эта статья поможет сделать мир 1С красивее и гармоничней:) Итак, поехали...

23.05.2018    17080    slozhenikin_com    19       

Распределение расходов пропорционально продажам 9

Статья Программист Пользователь Нет файла v8 v8::ОУ УТ10 УУ Финансовый учет и бюджетирование (FRP) Учет доходов и расходов Бесплатно (free) Практика программирования

Финансовая модель. Распределение административных расходов по подразделениям пропорционально продажам за месяц. Дополнительные реквизиты против бизнес-процессов!

13.05.2018    11426    Rustig    9       

Просмотр временных таблиц запроса в отладчике без изменения кода 126

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

Данный способ можно использовать для просмотра содержимого временных таблиц запросов (менеджеров временных таблиц) без внесения изменений в код.

24.04.2018    24664    avfed@rambler.ru    19       

Минимализмы 3 353

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

Очередная серия "минимализмов" [http://infostart.ru/public/306536/, https://infostart.ru/public/460935/]. Также, как и в предыдущих статьях, здесь приведена подборка коротких оригинальных авторских решений некоторых задач. Ранее эти решения были разбросаны по моим комментариям к чужим публикациям.

19.02.2018    35794    ildarovich    44       

Этюды по программированию. Взаимодействие с Microsoft Word 109

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

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

11.12.2017    25945    milkers    23