Как записать данные в базу 1с
Технологическая платформа 1С:Предприятие 8 позволяет сохранять в информационной базе произвольные файлы, получать их оттуда и использовать различными способами. Рассмотрим эти операции на примерах.
Перед выполнением загрузки файла в информационную базу 1С нужно получить полный адрес файла на диске. Работа с диалогами выбора файлов описана в отдельной статье.
Для хранения файлов используется реквизит (или ресурс регистра) с типом ХранилищеЗначения.
Загрузка произвольного файла в информационную базу 1С
Любой файл можно представить в виде двоичных данных и загрузить в ХранилищеЗначений.
При преобразовании двоичных данных в объект ХранилищеЗначения используется конструкция новый ХранилищеЗначения(Данные,Сжатие) с двумя параметрами:
- Данные — двоичные данные, которые нужно поместить в хранилище
- Сжатие — степень сжатия алгоритма Deflation. Целое число в диапазоне -1…9. -1 — степень сжатия по умолчанию. 0 — никакого сжатия, 9 — максимальная степень сжатия. Значение по умолчанию: -1. Параметр необязательный, если не указан, то сжатие не используется.
//В переменной Путь находится полный адрес файла на диске
//Преобразуем файл в двоичные данные
Файл = Новый ДвоичныеДанные ( Путь ) ;
//Создаем новый объект ХранилищеЗначения
//ХранилищеДанных - реквизит объекта с типом ХранилищеЗначения
ХранилищеДанных = Новый ХранилищеЗначения ( Файл , Новый СжатиеДанных ( 9 ) ) ;
Сохранение произвольного файла из информационной базы 1С на диск
Для сохранения файла из базы 1С на диск нужно определить путь и имя файла. Для этого существует диалог сохранения файлов, работа с которым описана в отдельной статье.
//Получаем двоичные данные из хранилища
//ХранилищеДанных - реквизит объекта с типом ХранилищеЗначения
Данные = ХранилищеДанных . Получить ( ) ;
//Записываем полученные данные на диск
//В переменной Путь находится полный адрес файла на диске
Данные . Записать ( Путь ) ;
Просмотр файла, находящегося в информационной базе 1С
Для просмотра сохраненного в базе файла необходимо, чтобы на компьютере было установлено приложение, открывающее данный файл.
//Получаем имя временного файла с необходимым расширением
//В переменную Расширение нужно поместить расширение файла, например "pdf"
Путь = ПолучитьИмяВременногоФайла ( Расширение ) ;
//Получаем данные из хранилища
//ХранилищеДанных - реквизит объекта с типом ХранилищеЗначения
Данные = ХранилищеДанных . Получить ( ) ;
//Записываем данные во временный файл
Данные . Записать ( Путь ) ;
//Пытаемся открыть файл в предназначенном для него приложении
//Если приложение не найдено, появится системный диалог "Открыть с помощью. "
ЗапуститьПриложение ( Путь ) ;
Добавить комментарий Отменить ответ
Теперь мы в соцсетях! Подписывайтесь, чтобы получать информацию о последних обновлениях или задать вопрос.
В версии платформы 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 = Истина);
Выполнение оператора Записать() приведёт к тому, что сначала будет вызван обработчик события ПередЗаписью, затем выполнена физическая запись в таблицу внешнего источника (INSERT), затем будет вызван обработчик события ПриЗаписи.
С ключевым полем таблицы внешнего источника вы можете поступать следующим образом. Если ключевое поле доступно для изменения, то тогда вы «вручную» задаёте его значение перед записью. Если изменение ключевого поля запрещено, то платформа самостоятельно получит ключ в INSERT или непосредственно после. Вы можете вмешаться в этот процесс с помощью метода УстановитьСсылкуНового() до физической записи (в обработчике события ПередЗаписью) или непосредственно после физической записи (в обработчике события ПриЗаписи).
Изменение данных
При изменении данных обновляются значения всех полей таблицы, у которых ТолькоЧтение = Ложь.
Если же необходимо записать только некоторые поля, вы можете указать их перечень прямо из встроенного языка с помощью методов УстановитьЗаписываемыеПоля() и ПолучитьЗаписываемыеПоля().
Удаление данных
При удалении данных выполняется непосредственное удаление строки из таблицы базы данных. При этом поиск ссылок на удаляемый объект не выполняется. Если такая функциональность нужна, вы можете запрограммировать её самостоятельно в обработчике события ПередУдалением().
Транзакции
Чтение данных внешних источников, как и ранее, выполняется вне транзакции, а при записи платформа открывает неявную транзакцию. При этом и чтение, и запись вы можете выполнять и в явных транзакциях с помощью методов объектаВнешнийИсточникДанныхМенеджер:
Блокировки
Для управления блокировками рекомендуется использовать свойство внешнего источникаРежимУправленияБлокировкойДанных:
а также свойство таблицы внешнего источника УровеньИзоляцииТранзакций:
Кроме этого, можно самостоятельно задать уровень блокировок в методе НачатьТранзакцию().
Дополнил типовую статью примерами) Будет больше времени - добавлю больше примеров.
В платформе начиная с версии 8.3.5 реализована возможность записи данных в таблицы внешних источников данных. В статье рассмотрена данная функциональность, расширяющая существующие возможности по интеграции конфигурации со сторонними системами.
Применимость
В статье рассматривается платформа 1C 8.3.5. Материал актуален и для текущих релизов платформы.
Запись во внешние источники данных в «1С:Предприятие 8»
В платформе 8.2.14 в дерево метаданных был добавлен новый объект – внешние источники данных. Назначение этого механизма – получение данных из внешних баз по отношению к 1С.
С выходами новых релизов платформы внешние источники данных развивались, например, стало возможным помещение во временные таблицы, выполнение соединений с обычными таблицами.
В статье мы рассмотрим, какие инструменты есть у разработчика для осуществления записи во внешние источники данных.
Все действия выполнялись на СУБД Microsoft SQL Server 2008 R2.
В платформе 8.3.4 была реализована возможность использования функций, описанных во внешних источниках данных.
Эта возможность позволяет запускать хранимые процедуры на стороне SQL Server, а при их помощи обращаться к данным внешних источников, в том числе и на запись.
Разберем пример. Создадим при помощи SQL Management Studio новую базу данных с именем kursy_test. Все дальнейшие эксперименты будут выполняться на ней.
В этой базе создадим таблицу nomenklatura, для этого напишем скрипт следующего содержания:
USE [ kursy_test ]
GO
CREATE TABLE [ dbo ] . [ nomenklatura ](
[ id ] [ int ] NOT NULL ,
[ description ] [ nvarchar ]( 150 ) NOT NULL ,
[ price ] [ numeric ]( 15 , 2 ) NULL ,
CONSTRAINT [ PK_id ] PRIMARY KEY ([ id ])
)
GOВ результате выполнения будет создана таблица следующей структуры:
Теперь нам нужно создать две хранимые процедуры, с помощью которых и будет выполняться модификация данных.
Первую процедуру назовем insert_nomenklatura. Она будет предназначена для добавления новой строки в таблицу. Скрипт для ее создания будет выглядеть так:
USE [ kursy_test ]
GO
CREATE PROCEDURE insert_nomenklatura
@id int ,
@description nvarchar ( 150 ),
@price numeric ( 15 , 2 )
AS
BEGIN
INSERT INTO [ kursy_test ] .dbo. [ nomenklatura ] ([ id ], [ description ] ,[ price ])
VALUES ( @id , @description , @price )
END
GOВторая процедура с именем update_nomenklatura будет выполнять обновление уже существующей в таблице записи. Чтобы ее создать, был запущен такой скрипт:
USE [ kursy_test ]
GO
CREATE PROCEDURE update_nomenklatura
@id int ,
@description nvarchar ( 150 ),
@price numeric ( 15 , 2 )
AS
BEGIN
UPDATE [ kursy_test ] .dbo. [ nomenklatura ]
SET [ description ]= @description ,[ price ]= @price
WHERE [ id ]= @id
END
GOВ Обозревателе объектов созданная таблица и две хранимые процедуры выглядят следующим образом:
Все подготовительные действия на стороне Microsoft SQL Server мы выполнили, теперь переходим в конфигуратор “1С:Предприятие 8”.
Создаем новый внешний источник данных с именем Nomenklatura. При создании новой таблицы в этом источнике данных указываем следующие параметры подключения к источнику данных:
Строку соединения укажем следующую:
При наличии пароля у пользователя sa его необходимо указать в параметре Password строки соединения.
Если все параметры подключения указаны корректно, при нажатии на кнопку ОК, откроется окно, содержащее таблицы, доступные в источнике данных:
Для увеличения нажмите на изображение.
Отмечаем галочками интересующие нас поля таблицы. При нажатии кнопки Готово во внешнем источнике данных Nomenklatura будет создана таблица dbo_nomenklatura:
Теперь переключаемся на закладку “Функции” нашего источника данных.
При помощи аналогичного мастера производим добавление двух хранимых процедур:
Получаем следующий внешний вид закладки “Функции”:
Теперь запрограммируем пользовательский интерфейс для работы с внешним источником данных.
В форме списка на командной панели расположим кнопку “Добавить” со следующим обработчиком:
&НаКлиенте
Процедура Добавить ()
Оповещение = Новый ОписаниеОповещения ( “ОткрытьТаблицуЗавершение” , ЭтотОбъект );
ОткрытьФорму (
“ВнешнийИсточникДанных.Nomenklatura.Таблица.dbo_nomenklatura.ФормаОбъекта” , , , , , ,
Оповещение , РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс );
КонецПроцедурыВ форме объекта разместим кнопку “Сохранить”, при нажатии на которую выполняется следующий код:
В режиме предприятия форма списка выглядит следующим образом:
Форма объекта представлена ниже:
Для увеличения нажмите на изображение.
После нажатия на кнопку “Сохранить” вызывается хранимая процедура на SQL Server, в таблицу базы данных будет добавлена новая запись.
Таким образом, при помощи хранимых процедур мы реализовали запись во внешние источники данных.
В платформе 8.3.5 появилась новая возможность – запись во внешние источники данных напрямую, минуя разобранный выше механизм хранимых процедур.
Данные можно редактировать как программно, так и интерактивно. И для нашего примера прибегать к конфигурированию не придется.
В командных панелях и в меню “Еще” можно увидеть стандартные кнопки, такие как “Создать”, “Скопировать”, “Изменить” и т.д.
Для увеличения нажмите на изображение.
А в форме объекта появились кнопки “Записать” и “Записать и закрыть”:
Как видно, теперь работа с внешними источниками похожа на работу со справочниками, документами и т.д.
Рассмотрим, какие изменения были произведены на уровне метаданных, чтобы сделать возможным запись во внешние источники данных.
У таблицы данных добавлено новое свойство ТолькоЧтение (тип – булево).
Если это свойство установлено в Истина, запись данных в эту таблицу средствами платформы невозможна.
Поле таблицы данных обладает теперь свойствами:
- ТолькоЧтение (тип – булево) – возможно ли изменение данных в этом поле;
- РазрешитьNull (тип – булево) – возможно ли в данном поле сохранять значение NULL.
Свойство Только чтение следует устанавливать в значение Истина для полей базы данных с автоматическим изменением, автоматически формируемые ключевые поля, вычисляемых полей и т. д.
Добавлять, изменять и удалять данные во внешних источниках можно с помощью встроенного языка.
Для этого у объектов ВнешнийИсточникДанныхТаблицаНаборЗаписей и ВнешнийИсточникДанныхТаблицаОбъект были реализованы новые методы Записать() и Удалить().
Рассмотрим пример программного добавления новой записи для внешнего источника данных, рассмотренного выше.
В модуле объекта таблицы внешнего источника данных теперь можно задать обработчики событий, возникающих при записи, такие как ПередЗаписью(), ПриЗаписи() и т. д.:
В данной статье были рассмотрены два варианта записи данных во внешние источники данных – при помощи хранимых процедур и при помощи новых механизмов платформы 8.3.5.
Таким образом, в платформе теперь реализованы механизмы для полноценной интеграции с внешними приложениями.
В редакции 8.3.6 описываемый выше функционал был расширен при помощи новых специальных методов ПолучитьИзменяемыеПоля() и УстановитьИзменяемыеПоля(). С помощью них предоставлена возможность выполнять операцию записи в те поля таблицы ВИД, которые помечены в конфигураторе как доступные только для чтения. Благодаря этому стало возможным реализовать такой сценарий, при которой запись в отдельные поля таблицы ВИД возможна только в тех случаях, когда это необходимо в соответствии с бизнес-логикой приложения.
В редакции 8.3.7 был доработан механизм, определяющий какие конкретно поля таблиц ВИД могут содержать значения NULL. До этого момента все таблиц ВИД могли принимать это значения. Такое изменение связано с увеличением скорости сортировки в динамических списках по этим полям.
В редакции 8.3.8, наконец, стало возможным определение того факта, что внешний источник данных находится в состоянии транзакции. Эта функциональность представлена новым методом ВнешнийИсточникДанныхМенеджер.ТранзакцияАктивна()
В заключении отметим, что для внешних источников данных, как было показано выше, описываются таблицы данных из классической реляционной модели. Платформа же использует иную парадигму работу с данными, предлагая разработчику некоторый набор типов прикладных объектов (справочники, документы, регистры и т.д.). Именно поэтому система при работе с таблицами внешних источников данных не поддерживает большую часть функциональности, которая присуща ее “родным” объектам. Поэтому рекомендуется воздержаться от разработки какой-то бизнес-логики, с учетом использования таблиц ВИД, если это не связано с задачами интеграции с уже существующими системами. Или, говоря по простому, нужно стараться избегать хранить данные, которые активно используются в вашем приложении, в какой-то другой таблице внешней системы, если они этой системой не используются.
В следующей статье мы рассмотрим логическое продолжение использования технологии внешних источников данных в системе «1С:Предприятие».
PDF-версия статьи для участников группы ВКонтакте
Если Вы еще не вступили в группу – сделайте это сейчас и в блоке ниже (на этой странице) появятся ссылка на скачивание материалов.
Статья в PDF-формате
Если Вы уже участник группы – нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: очистить кеш браузера или подписаться через другой браузер.
Комментарии / обсуждение (185):
В листинге процедуры Добавить упоминается метод оповещения ОткрытьТаблицуЗавершение.
Но его код не приведен. Можете подсказать, какая там логика должна быть описана?Добрый день!
Указанный метод должен содержать действия, которые будут выполнены после того, как пользователь закроет открывшуюся форму объекта dbo_nomenklatura. Нам не требуются никакие действия после закрытия этой формы, поэтому обработчик может быть пустой.Ненадо приписывать web сервисам несуществующие минусы.
>> 1. Не кроссплатформенно
B под линуксом и под виндовсом работают прекрасно. На FreeBSD ты сам говоришь тоже работают.При прямом доступе в базу 1С писать нельзя однозначно. Иначе рискуешь огрести кучу неприятностей.
- оперативная отметка времени (ее значение должно быть уникальным, а в рассматриваемом случае может оказаться не уникальным);
- полнотекстовый поиск будет работать неверно;
- неуникальность номеров и кодов практически гарантирована;
- блокировки объектов (используются в методе Заблокировать прикладных объектов 1С:Предприятия и при их редактировании в диалогах);Кроме того при прямом доступе недоступен весь функционал 1С. Например в поле Представление адреса в регистре контактной информации это самое представление нужно писать в том виде в каком его возвращает функция глобального модуля, иначе адрес будет трактоваться как иностранный.
Придётся дублировать часть функционала 1С на сайте. А это гемор.Попробую опровергнуть по пунктам, но сначала я хочу предупредить: НИКОГДА НЕ ДЕЛАЙТЕ ТО В ЧЁМ НЕ УВЕРЕНЫ.
При прямом доступе нельзя писать однозначно.
Оперативная отметка не будет уникальной.
Полнотекстовый поиск будет работать не верно.
Не уникальность кодов и номеров.
Блокировки объектов при записи в базу.
Первый пункт о невозможности записи. В большинство баз данных писать можно. Для этого существует операторы INSERT и UPDATE. Неприятности мы можем получить и при не правильном конфигурировании 1С.
Таким образом правильно сгенерированный GUID будет уникален с достаточно большой долей вероятности.
Четвертое. Как же нам добиться уникальности номера? И надо ли? Во первых не все документы и справочники должны иметь уникальные номера и коды. А во вторых не вижу причин что бы не проверить перед записью в базу данных какие номера уникальны, а какие нет.
SET @C = SELECT COUNT(*)
Однако 2 часа ночи и пора спать. Спасибо Трактору — 90% статьи его.
Добравшись до работы, я таки решил проверить как это работает. Написав Функцию для постгреса:
return $result;
$$ LANGUAGE plperl;Я вставил запись в справочник:
Потом создал новый элемент в 1С. Был приятно удивлен. 1С действительно не контролирует вставку данных в свою базу. Так что если будете вставлять напрямую данные, то за нумерацию и уникальность придется нести ответственность вам. Осталось проверить блокировки.
Специальные предложения
При обращении к одной базе данных из нескольких регистраций информационной базы (из нескольких кластеров) возможна неверная работа механизмов, за которые отвечает менеджер кластера. Кроме нумерации к ним относятся:
- оперативная отметка времени (ее значение должно быть уникальным, а в рассматриваемом случае может оказаться не уникальным);
- некоторые профайлы (сохраненные в них значения могут теряться или периодически оказываться недоступными);
- индексы полнотекстового поиска окажутся задублированы и могут оказаться различными;
- если механизм регламентных заданий включен в нескольких кластерах, то одно регламентное задание сможет быть запущено в нескольких экземплярах;
- управляемые блокировки (в рассматриваемом случае не используются);
- блокировки объектов (используются в методе Заблокировать прикладных объектов 1С:Предприятия и при их редактировании в диалогах);
- каждый кластер имеет свой журнал регистрации.
Все автоматические блокировки реализуются средствами управления транзациями СУБД. Поэтому наличие нескольких кластеров не оказывает влияние на транзакционный механизм базы данных.И это всё при том что 1С умеет работать со своей базой :-)
awk, про УИДы всё ясно, тут возражений нет. Генери, пиши и настанет счастье.
С номерами/кодами интереснее. Я провёл эксперимент и попробовал создать новые документы в одну базу из двух кластеров 1С. Номера задвоились. Предполагаю что причина задвоения в том что сервер 1С самостоятельно выдаёт новые номера и не проверяет уникальность нового номера в базе. В этом случае избежать задвоения номеров при записи со стороны не удастся никак.
Из разъяснений 1С я понял что управляемые блокировки накладываются средствами 1С, а не СУБД, поэтому могут быть конфликты при записи со стороны.
Начиная с платформы 8.2.14 в 1С появилась коллекция "Внешние источники данных". Использование объектов этой коллекции позволяет работать с внешними данными через ODBC. Стандартные механизмы платформы позволяют просматривать данные и использовать их в запросах. Тем не менее, на примере взаимодействия с SQL покажу возможность работы с внешними источниками на прямое добавление/изменение данных SQL из 1С.
Создадим для начала через консоль сервера SQL базу "test" с таблицей "assortment", строковые поля id, name, price. Сделаем ключевым поле id и внесем пару строк в таблицу. Потом создадим пустую базу 1С, в конфигураторе добавим внешний источник данных "ВнешнийSQL". На вкладке "Данные" добавим нашу таблицу. Можно ввести строку соединения, либо воспользоваться конструктором строки. В моей строке указаны явно учетная запись суперадминистратора (sa) и пароль к ней. Поскольку это сервер для тестов, вопросом безопасности можно пренебречь. Для реальной базы такого делать не стоит, либо можно завести отдельного пользователя с правами чтения/записи только на эту базу и хранить его данные.
После подключения находим в списке таблиц нашу, выбираем необходимые поля, в нашем случае все.
После добавляем формы для объекта и списка.
Если запустить нашу конфигурацию сейчас, то элементы формы списка будут открываться только на просмотр.
Теперь начинаем вносить изменения в формы, начнем с формы объекта. В свойствах реквизита "Объект" убираем галку "Сохраняемые данные", после этого реквизиты формы будут доступны для редактирования. Так же добавляем команду "ЗаписатьДанные" и прописываем код сохранения данных.
Теперь в форме списка на панель вешаем команду "Добавить" и добавляем обработку оповещения.
Вот и все, теперь мы можем как добавлять, так и редактировать данные таблицы. При необходимости можно добавить дополнительный контроль ввода, автонумерацию, удаление и прочие механизмы.
Похожие FAQ
Как заполнить табличную часть формы программно? 8
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П 17 правил для составления оптимального ЗАПРОСа к данным базы 1С 44
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ 1C и Google Maps 21
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во время решения задачи было реш 1C медленно работает по сети с базой на SQL Server 20
Данное обстоятельство может быть обусловлено многими причинами. Одна из них - неоптимальная настройка MS SQL . Перечислим неоптимальности в настройке: 1) Неправильно указанный сетевой протокол, используемый для взаимодействия 1С с SQL Server. П 1C: Enterprise Development Tools 50
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем Посмотреть все результаты поиска похожихЕще в этой же категории
Excel файл как Внешний источник данных 16
Подключимся и загрузим из файла Excel данные в таблицу значений 1С. Сделать теперь это очень просто. 1. В конфигурации добавляет новый объект метаданных типа " Внешние источники данных" и назовем его просто " Excel" . https://helpf.pro/uploads/img Запись во внешний источник данных из 1С 8.3 (без com подключения) 0
В 8.3.4 в свойствах объекта "Внешний источник данных" появилась вкладка "Функции". Для внешних таблиц MSSQL данный функционал позволяет подключить к 1С хранимые процедуры и функции на стороне SQL. В том числе и процедуры, содержащие запросы SQL на д получение данных 0
Всем доброго дня. Суть проблемы. В бухгалтерии стоит 1с8 . Нужно дописать модуль, который будет дергать несколько справочников и документов из 1с, бухгалтерии. Главный бухгалтер залезть к ним и дописать свой модуль не дает. Написал свое, отдельно. Посмотреть все в категории Внешние источники данныхКлючевые слова и Изображения
Слова упорядочены по частоте использования в тексте
Изображения
конструкция СсылкаНаСтроку = ВнешниеИсточникиДанных.ВнешнийSQL.Таблицы.dbo_assortment.ПолучитьСсылку(СтрокаПоля);не работает (причины знает только 1С), а как запросом SQL получить ссылку на строку данных, что бы можно было обратиться например так: СсылкаНаСтроку.price ?
А как получить ссылку на строку данных. что бы можно было обратиться например так: СсылкаНаСтроку.price ?
Читайте также: