Выгружаем в EXCEL с помощью ADO

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

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

excel ado

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

Итак, постановка задачи: Создать с помощью механизма ADO файл excel и выгрузить в него из справочника "Номенклатура" код и наименование.

ИмяФайлаЭксель = "D:\Export.xls"; // Имя создаваемого файла

// Собираем строку подключения
СтрокаПодключения = "
|Provider=Microsoft.Jet.OLEDB.4.0;
|Data Source="
+ИмяФайлаЭксель+";
|Extended Properties=""Excel 8.0;HDR=No;"";"
;

// Создаем объект ADOX.Catalog
Catalog = Новый COMОбъект("ADOX.Catalog");
Catalog.ActiveConnection = СтрокаПодключения;

// Создаем таблицу и добавляем в неё два столбца
Table = Новый COMОбъект("ADOX.Table");
Table.Name = "Table";
Table.Columns.Append("Code");
Table.Columns.Append("Description");

// Присоединяем таблицу
Catalog.Tables.Append(Table);
Table = Неопределено;
Catalog = Неопределено;

// Создаем соединение
Connection = Новый COMОбъект("ADODB.Connection");
Connection.Open(СтрокаПодключения);
Command = Новый COMОбъект("ADODB.Command");
Command.ActiveConnection = Connection;
Command.CommandType = 1;

// Получаем номенклатуру для выгрузки
Запрос = Новый Запрос("
|ВЫБРАТЬ
|    Номенклатура.Код,
|    Номенклатура.Наименование
|ИЗ
|    Справочник.Номенклатура КАК Номенклатура"
);

Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();

// Заполняем таблицу данными выборки
Пока Выборка.Следующий() Цикл
       
Command.CommandText = "
        |INSERT INTO [Table] VALUES ('"
+Выборка.Код+"','"+Выборка.Наименование+"')";
       
Command.Execute();
КонецЦикла;

// Закрываем соединение
Command = Неопределено;
Connection.Close();
Connection = Неопределено;

Все, готово !

Плюсы данного способа формирования файла excel:

- Большая скорость работы.

- Не требуется запуск самого процесса excel.exe, как это происходит в случае использования OLE-сервера excel.application, а следовательно на него не тратятся ресурсы. Кроме того нет необходимости отслеживать и перехватывать ошибки, связанные с процессом excel.exe, те кто использовал OLE-cоединение - тот поймет о чем я говорю, мало радости когда в случае программной или пользовательской ошибки процесс excel.exe остается висеть в памяти.

- Не требуется самого приложения EXCEL, достаточно что бы на компьютере был установлен OLEDB провайдер Microsoft.Jet.OLEDB.4.0 (он входит в состав практически всех ОС семейства Windows) Это особенно актуально, когда данный код выполняется на сервере 1С:Предприятия, например в качестве регламентного задания.

Минусы тоже имеются:

- Нельзя красиво оформить ячейки - шрифт, рамки и т.д.

P.S. Возможен "комбинированный" способ: с помощью ADO формируется файл, а затем с помощью OLE "наводится марафет".

Выгружаем в EXCEL с помощью ADO (часть 2)

Источник: http://www.obrabotki.com/1s-excel-ado-1/

94

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

Наименование Файл Версия Размер
ADO_1s.rar
.rar 3,97Kb
16.06.15
9
.rar 3,97Kb 9 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо
1. borman 76 02.02.10 07:39 Сейчас в теме
Вот здесь можете посмотреть готовую обработку для УТ, которая создает книгу excel со страницами.
Да простит меня автор за саморекламу 8-) .
2. resear4er@yandex.ru 03.02.10 16:23 Сейчас в теме
Многовато писанины.
Почему бы не воспользоваться напр. таким кодом для выгрузки данных в excel:
ИмяФайлаЭксель = "D:\Export.xls";
Макет = ЭтотОбъект.ПолучитьМакет("Макет");
ТабДок = Новый ТабличныйДокумент;
// Получаем номенклатуру для выгрузки
Запрос = Новый Запрос(" ВЫБРАТЬ
| Номенклатура.Код,
| Номенклатура.Наименование
|ИЗ
| Справочник.Номенклатура КАК Номенклатура");
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
строка = Макет.ПолучитьОбласть("строка");
строка.Параметры.Заполнить(результат);
ТабДок.Вывести(строка);
КонецЦикла;
ТабДок.Записать(ИмяФайлаЭксель,ТипФайлаТабличногоДокумента.XLS97);

Код отработал довольно быстро: 12500 запис. за 12сек.
3. ll13 1036 03.02.10 16:37 Сейчас в теме
(2) А вы попробуйте выполнить свой код на сервере ;)
А Вы что на все случаи жизни макеты рисуете ?
11. markers 240 29.07.10 06:55 Сейчас в теме
(2) Ваш вариант не всегда годен, к примеру проблема с обрезанием кода номенклатуры при сохранении в эксель (обрезает ведущие нули), нельзя сделать ссылку и много ещё чего..
4. resear4er@yandex.ru 03.02.10 16:44 Сейчас в теме
II13 спасибо за ответ! Теперь понял, где данную статью можно применить. :)

P.S Нет, не на все :)
5. dimaxmaster 08.04.10 16:04 Сейчас в теме
Автору огромный +. Не знал "силу маханизма" АDO. Спасибо!
6. dimaxmaster 18.04.10 18:39 Сейчас в теме
Вопрос к автору: выгрузка происходит в строке, т.е. все данные выгружаются как строка. А нет ли возможности выгрузить Число как Число?
7. ll13 1036 18.04.10 19:55 Сейчас в теме
(6) Где-то так :
Table = Новый COMОбъект("ADOX.Table");
Table.Name = "TestTable";

// Допустимые типы
// adDouble = 5 Значение с плавающей точкой двойной точности
// adDAte = 7 Дата
// adCurrency = 6 Денежная сумма
// adBoolean = 11 Булево
// adVarWChar = 202 Символьная строка Unicode, заканчивающаяся NULL
// adLongVarWChar = 203 Длинное строковое значение

Column = Новый COMОбъект("ADOX.Column");
Column.Name = "МойСтолбец";
Column.Type = 5;
Table.Columns.Append(Column);
Column = Неопределено;
Catalog.Tables.Append(Table);

8. dimaxmaster 19.04.10 14:32 Сейчас в теме
9. Jogeedae 38 21.04.10 02:20 Сейчас в теме
поясните:
Command.CommandType = 1;

boriskud; +1 Ответить
10. ll13 1036 21.04.10 12:14 Сейчас в теме
(9) Тип передаваемой команды
1 - текстовая команда SQL
Ещё может быть хранимая процедура и по-моему таблица(но точно не помню)
Но с ними не экспериментировал .... если осилите напишите :)
12. Eddmos 25.10.10 14:50 Сейчас в теме
А можно к модулю приблудить позиции
при выводе из номенклатуры
штрих код и стоимость товара????

Возможен ли обратный вариант
загрузка из Excel в 1С
например в "Реализация товаров и услуг: продажа" опять же по тем позициям
код штрих наименование

спс
13. ll13 1036 25.10.10 20:17 Сейчас в теме
(12)
А можно к модулю приблудить позиции
при выводе из номенклатуры
штрих код и стоимость товара????
Разумеется, я не вижу здесь никаких проблем.

Возможен ли обратный вариант
загрузка из Excel в 1С
например в "Реализация товаров и услуг: продажа" опять же по тем позициям
код штрих наименование
На данном сайте таких обработок целая куча...
14. marku 61 20.11.10 00:08 Сейчас в теме
Спасибо Автору ll13 :idea:
вот еще в сети нашел для 2007:
Excel 2007 Connection String
"Provider=Microsoft.ACE.OLEDB.12.0; data source={0}; Extended Properties=\"Excel 12.0;HDR=No;IMEX=1;\"";

СтрокаПодключения = "
|Provider=Microsoft.ACE.OLEDB.12.0;
|Data Source="+ИмяФайлаЭксель+";
|Extended Properties=""Excel 12.0;HDR=No;"";";
16. AlexO 127 16.01.12 02:29 Сейчас в теме
(14) Наверное, HDR=Yes надо ставить.
17. AlexO 127 16.01.12 02:51 Сейчас в теме
(14) хотя нет, это не влияет в данном случае (но я до конца не уверен):
Where "HDR=Yes" means that there is a header row in the cell range
(or named range), so the provider will not include the first row of the
selection into the recordset. If "HDR=No", then the provider will include
the first row of the cell range (or named ranged) into the recordset.
"Где "HDR=Yes" означает, что на открываемом листе есть строка-заголовок в диапазоне ячеек выбранных данных(или именованном диапазоне), т.о. Подключение не включит первую строку набора в Рекордсет (набор записей или набор данных).
Если же "HDR=No", то Подключение включит первую строку диапазона ячеек (или именованного диапазона) в Рекордсет."
15. ratinc 22.02.11 20:05 Сейчас в теме
Созданный таким образом файл затем открывается с предупреждением что он повреждён. Если сохранять xlsx то вообще не открывается
18. Unicorn31 45 24.02.12 22:32 Сейчас в теме
адо использовал раньше для работы с sql базами- работает на ура... как то не приходило в голову , что для 1с можно использовать... спасибо за идею
19. IrinaKostroma 23.08.12 20:34 Сейчас в теме
Все бы хорошо в этом способе выгрузки, но есть проблемка
почему то в созданном файле Excel в начале каждого слова в столбце стоит апостроф

Кто знает можно ли сделать чтобы он не появлялся при выгрузке?
29. hogik 429 08.05.18 21:48 Сейчас в теме
(19)
(26)
Используйте:
К=Строка(8)+СтрЗаменить(Выборка.Код,"'","''");
Н=Строка(8)+СтрЗаменить(Выборка.Наименование,"'","''");
Command.CommandText = "INSERT INTO [Table] VALUES ('"+К+"','"+Н+"')";
Command.Execute();
30. hogik 429 08.05.18 21:52 Сейчас в теме
20. DoctorRoza 04.02.13 16:51 Сейчас в теме
Ох, помогла статья, очень нужная оказалась. :)
21. sick_russian 08.07.13 10:32 Сейчас в теме
А как сделать выгрузку чтобы не создавать файл а открыть для записи существующий?
22. Dim Dimy4 09.04.14 10:21 Сейчас в теме
Столкнулся с проблемой выгрузки из 1С 8 в Excel по ADO.
Задача "Выгружать данные в именованный диапазон ячеек", при чём существует несколько именованных диапазонов ячеек. Расположены они разнообразно на листе.

Пример: заданы несколько именованных диапазонов.
1. Имя диапазона "Дата", адрес диапазона "A1";
2. Имя диапазона "Товар", адрес диапазона "A3:A3000";
3. Имя диапазона "Артикул", адрес диапазона "B3:B3000";
4. Имя диапазона "Количество", адрес диапазона "C3:C3000";
и т.д.

Делаешь поиск диапазона на листе, находит все ок.
Делаешь запись в ячейки диапазона значений, пишет. Но проставляет не первую, вторую, третью, т.д. ячейку адреса диапазона , а первую,вторую, третью, т.д. ячейку столбца.
Например записываешь наименование номенклатуры в диапазон "Товар". Записывается:
Товар1 вместо ячейки "A3" в ячейку "A1";
Товар2 вместо ячейки "A4" в ячейку "A2";
Товар3 вместо ячейки "A5" в ячейку "A3";
и т.д. Кто сталкивался с такой проблемой и какое решение находили?
27. Dim Dimy4 20.04.15 12:49 Сейчас в теме
(22) Dim Dimy4,
пришлось делать через объект COMSafeArray, поищите информацию.
23. Ele1234567 29.04.14 11:18 Сейчас в теме
Очень интересное решение, обязательно нужно попробовать на практике. Сейчас как раз задача по выгрузке данных в регламентном задании в эксель и вот на сервере с этим возникают загвоздки.
24. Vodoley 1 28.07.14 18:47 Сейчас в теме
наткнулся на то, что :
1. после имени листа ставлю $ иначе не находит

2. вопрос - как записать в эксель числовые данные так, чтобы он их и принял как числовые (без треугольничков в углах ячейки, мол число отформатировано как текст ??
25. 1801 19.09.14 18:11 Сейчас в теме
Попробовал - работает, переделал этот шаблон под выгрузку регистра накопления "Продажи" в Excel. (Аналитикам так удобней работать с данными, путем построения в Excel сводных таблиц в различных разрезах.) Большое вам спасибо!

26. 1801 19.09.14 18:26 Сейчас в теме
Вопрос: можно ли вместо апострофа использовать другой разделитель? У нас в справочнике в наименовании товара апостроф иногда встречается и обработка на этих местах спотыкается.
28. UserPro 4 03.12.17 01:57 Сейчас в теме
Замечательно. А как картинку выгрузить в Exsel с помощью ADO ???
Оставьте свое сообщение

См. также

Вам нравятся запросы в 1С? 13

Инструменты и обработки Программист Конфигурация (md, cf) v8 v8::Запросы 1cv8.cf Абонемент ($m) Практика программирования Разработка

Речь не только о том, что простейший запрос с "легальным" оформлением растянется на пол-экрана, речь еще обо всем, что нужно написать "в нагрузку" к тексту запроса. Все эти "Новый Запрос", "УстановитьПараметр" и последующие пляски с обработкой результата... Пора с этим заканчивать!

1 стартмани

03.07.2019    9080    1    m-rv    73       

Безопасная работа с транзакциями во встроенном языке 183

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования Разработка

Разбираемся с опасностями использования транзакций во встроенном языке 1С. Познаем ошибку "В данной транзакции уже происходили ошибки". Учимся защищаться от них.

1 стартмани

25.03.2019    13313    7    tormozit    35       

Коннектор: удобный HTTP-клиент для 1С:Предприятие 8 512

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных WEB Универсальные функции Инструментарий разработчика Универсальные обработки

Коннектор - библиотека для работы с HTTP запросами. Библиотека берет на себя всю рутину работы с HTTP запросами. Буквально в одну строку можно получать данные, отправлять, не заботясь о необходимости конструирования URL, кодирования данных и т.п.

1 стартмани

31.01.2019    25109    242    bonv    106       

Отправка электронной почты с помощью локального почтового клиента из 1С, развернутой под удаленным рабочим столом 13

Инструменты и обработки Программист Пользователь Архив с данными v8 КА1 БП2.0 УТ10 УПП1 Windows Абонемент ($m) Печатные формы документов Универсальные функции Email

Решение для интерактивной (нажал-отредактировал) отправки электронных писем и печатных форм через почтовый клиент (Thunderbird, Outlook) находящийся на локальном компьютере, из конфигурации 1С, развернутой под удаленным рабочим столом (RDP, remote-app). Подходит также для локального развертывания 1С. Представлен пример быстрой интеграции с конфигурациями "Управление торговлей 10.3", "Управление производственным предприятием 1.3", "Комплексная автоматизация 1.1", "Бухгалтерия предприятия 2.0".

1 стартмани

21.09.2018    11081    10    stvorl    0       

Работа с публикациями "Инфостарт" 13

Инструменты и обработки Программист Архив с данными v8 УУ Абонемент ($m) Практика программирования О сообществе WEB

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    8186    10    RocKeR_13    12       

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции 63

Инструменты и обработки Программист Бизнес-аналитик Приложение (apk) v8 Windows Абонемент ($m) Инструментарий разработчика Практика программирования

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    14727    23    informa1555    26       

Работа с данными выбора 38

Инструменты и обработки Программист Архив с данными v8 Россия Абонемент ($m) Практика программирования Работа с интерфейсом

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

1 стартмани

17.07.2018    19771    13    kalyaka    15       

ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ ("001", "Новый товар") 105

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::Запросы 1cv8.cf Абонемент ($m) Практика программирования

Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.

1 стартмани

01.06.2018    19003    86    m-rv    57       

БСП: Дополнительная обработка (Регламенты), примеры от простого к сложному 236

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования БСП (Библиотека стандартных подсистем)

Очень много попадается странных решений, которые можно решить через БСП:Дополнительные отчеты и обработки. Я бы вообще БСП из-за этой подсистемы переименовал в «Большое Спасибо Программистам». Поработаем с подсистемой в части написания регламентных заданий.

1 стартмани

10.05.2018    26227    24    dsdred    34       

Как выполнить отчет на СКД через COM и получить данные отчета? 85

Статья Программист Архив с данными v8 УПП1 Россия Windows Абонемент ($m) Практика программирования

Для чего это нужно. Например, нужно в одной базе получить какой-либо показатель из другой базы. Этот показатель вычисляется в каком-либо сложном отчете, который написан на СКД. Можно, конечно, "скопипастить" текст запроса из другой базы, немного подправить его и выполнять в том же COM подключении. Но с этим теряется гибкость: если отчет изменился, то нужно помнить о том, что где-то есть его "немного модифицированная" копия. В статье будет рассмотрен пример получения данных из базы ЗУП.

2 стартмани

08.05.2018    17217    10    wowik    3       

Вы больше не будете разбирать Excel как раньше 112

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Загрузка и выгрузка в Excel

Кому не приходилось разбирать файлы в формате Excel? Все матерятся, плюются, требуют обещаний что "это в последний раз", но таки пишут загрузку из Excel. Потом форматы меняются, строки съезжают, колонки переставляют... Вам это не надоело?

1 стартмани

07.05.2018    18803    61    m-rv    32       

Работа со схемой запроса 171

Статья Программист Конфигурация (md, cf) v8 v8::Запросы Абонемент ($m) Инструментарий разработчика Практика программирования

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

1 стартмани

24.04.2018    27191    72    kalyaka    34       

Заполняем по шаблону (по умолчанию) 68

Инструменты и обработки Программист Архив с данными v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

08.02.2018    17423    20    mvxyz    17       

Бесплатная проверка контрагентов в ФНС (общий модуль с алгоритмом). На примере выводим статус в список справочника контрагентов 122

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования

Если вам интересно проверить контрагенте в ФНС, вам поможет данная публикация. Весь алгоритм работы строится на основе данных, полученных с сервиса http://npchk.nalog.ru совершенно бесплатно.

1 стартмани

01.02.2018    24284    61    rpgshnik    46       

Расширение возможностей печати: Вывод произвольного нижнего и верхнего колонтитула 8

Отчеты и формы Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Печатные формы документов Практика программирования Универсальные функции

Расширяем функционал вывода нижнего / верхнего колонтитула. Стандартно 1С имеет достаточно ограничений по выводу и наполнению колонтитулов содержимым, взять хотя бы такие, как вывод только текста и отсутствие ограничения на номер конечной страницы. А при разработке кода сталкиваешься с тем, что свой блок с нижним колонтитулом нужно прижимать к низу страницы. Казалось бы быстро решаемый вопрос, но и в нем есть нюансы. Сейчас я расскажу о том, как решалась эта задача. UPD 15.02.2018. Добавлен вывод верхнего колонтитула; Вывод колонтитулов на первой и последней странице управляется параметрами; Научился считать страницы: Добавлено заполнение переменных аналогичных стандартным из колонтитулов; Задаются форматы даты и времени. Ограничения прежние: 1. Повторно сформировать табличный документ после смены параметров страницы интерактивно.; 2. Передавать данные для более плотной печати как можно более мелко нарезанными кусками.

1 стартмани

29.12.2017    21424    21    agent00mouse    0       

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника. ЗУП 3.1 35

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Зарплата Абонемент ($m) Обработка документов Загрузка и выгрузка в Excel

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника по данным экономического отдела. ЗУП 3.1.

3 стартмани

20.12.2017    23944    29    mvv1975    5       

Печатная форма, сделанная как расширение конфигурации для БП 3.0. Новые возможности БСП 26

Инструменты и обработки Программист Расширение (cfe) v8 БП3.0 Абонемент ($m) Практика программирования Универсальные печатные формы

Печатные формы на внешних обработках скоро канут в лету. На смену им приходят ПФ, реализованные в виде расширений конфигурации. Не нашел на сайте примеров таких расширений. Привожу пример подобного расширения для БП 3.0.

1 стартмани

06.12.2017    17846    52    kwazi    6       

Быстрое заполнение данными файла MS EXCEL 11

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Практика программирования Загрузка и выгрузка в Excel

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

1 стартмани

13.07.2017    9978    8    dusha0020    4       

Расширения конфигураций 1С: учимся перехватывать методы 110

Инструменты и обработки Программист Расширение (cfe) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

30.05.2017    81916    14    signum2009    45       

Многопоточность. Универсальный «Менеджер потоков» (фреймворк) с отслеживанием зависимости объектов 175

Статья Программист Архив с данными v8 1cv8.cf Россия Абонемент ($m) Практика программирования Математика и алгоритмы Универсальные функции Производительность и оптимизация (HighLoad)

Восстановление партий, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

26.05.2017    38370    166    DarkAn    86       

Простой способ индексирования интервалов 181

Статья Программист Конфигурация (md, cf) v8 Абонемент ($m) Практика программирования

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

1 стартмани

28.09.2016    31631    39    ildarovich    22       

1С: Предприятие + корпоративный чат, как наладить оперативные уведомления за 10 минут 61

Инструменты и обработки Системный администратор Программист Компонента, плагин (dll, vbs,..) v8 Windows Абонемент ($m) Практика программирования

Как сделать автоматические уведомления о разных событиях из 1С в корпоративный чат MyChat для сотрудников компании

1 стартмани

14.08.2016    38073    35    Demanoidos    60       

 Интеграция 1С и C#. Обращение к 1С через COM. Создание номенклатуры и выполнение запроса к 1С из C# на примере интеграции с Союз-PLM (система информационной поддержки жизненного цикла изделий). Обработка «Загрузка заказа на сборку». (ERP) 13

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 ERP2 Абонемент ($m) Загрузка и выгрузка в Excel Внешние источники данных Интеграция

Союз-PLM представляет собой полнофункциональный программный комплекс для решения  широкого спектра задач управления инженерной технической информацией наукоемких изделий и сложных инженерных объектов в области машиностроения, приборостроения, архитектуры, строительства. На практике, это управление конструкторской документацией, интегрированное с САПР, бизнес-процессы, файловый архив. Все это работает в SQL и шевелится с помощью скриптов на C#. Скрипты свободно  отлаживаются в MS Visual Studio. Подробнее смотрите на их сайте: http://www.programsoyuz.ru/products/system-soyuz-plm.html  Редактирование, конструирование и использование бизнес-процессов на порядок лучше систем на базе 1С из тех, что я изучил.

1 стартмани

25.07.2016    32245    6    milkers    2       

Хранение файлов в томах на диске (для УПП 1.3) 76

Инструменты и обработки Программист Архив с данными v8 УПП1 Windows Абонемент ($m) Практика программирования

Доработка типовой УПП 1.3 в плане хранения присоединенных файлов вне базы данных

2 стартмани

05.06.2016    43496    4    wowik    27       

Остатки на каждый день в запросе 33

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf УУ Windows Учет ТМЦ Абонемент ($m) Практика программирования

Запрос формирует остатки товаров на каждый день в пределах выбранного периода.

1 стартмани

26.04.2016    33949    19    arakelyan    16       

Выполнение JavaScript кода из 1С в объекте Поле HTML Документа (HTML 5) и вызов события в 1С ПриНажатии 149

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Россия Windows Абонемент ($m) Практика программирования

Пример выполнения JS кода из 1С в Поле HTML Документа под управляемыми формами, с удобным получением результата в 1С(С помощью вызова привязанного события ПриНажатии к элементу ПолеHTMLДокумента)

1 стартмани

22.03.2016    60100    132    igo1    49       

Количество дней недели (понедельников/вторников/...) в заданном диапазоне одним запросом 28

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 Абонемент ($m) Практика программирования

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

1 стартмани

03.03.2016    11977    1    Alexander.Shvets    5       

Простые радости жизни программиста 1С: выбор типа значения 51

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования Работа с интерфейсом

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

1 стартмани

17.02.2016    38530    45    yuraos    17       

Яндекс.Деньги "Благотворительность" 17

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Инструментарий разработчика Практика программирования

Яндекс.Деньги теперь в 1С. Форма для приема благотворительных взносов. Форму легко сделать и вставить на любую страницу сайта или блога. Платежи будут приходить на ваш кошелек. На форме есть три способа платежа: из кошелька, с банковской карты, с баланса мобильного.

1 стартмани

16.02.2016    17144    9    Tatitutu    5       

Генерация QR-кода (управляемая форма, обычное и управляемое приложение) 59

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Windows Абонемент ($m) Универсальные функции Универсальные обработки

Обработку можно быстро и легко интегрировать в любую конфигурацию с и без БСП (Библиотека Стандартных Подсистем).

3 стартмани

04.02.2016    35629    152    tunesoft    24       

Мастер рассылки e-mail 2.2 для управляемых форм 9

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ ERP2 БП3.0 УТ11 Абонемент ($m) Практика программирования Email

Для пользователей: переделанный из старый разработки под 8.2 с использованием библиотеки Мастер рассылки e-mail 2.2 (ERP, УТ, БП) (Только управляемые формы), который теперь может запускаться под любой версией платформы с разрешенными или запрещенными модальными/синхронными вызовами в конфигурации. Также удобный выбор e-mail и их владельцев с помощью отбора динамического списка по любым критериям и галочки исключения.

1 стартмани

29.12.2015    30417    20    milkers    4       

Нечеткий поиск одним запросом 37

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

28.12.2015    19059    57    vasvl123    9       

Передача больших пакетов через веб-сервисы 137

Инструменты и обработки Системный администратор Программист Конфигурация (md, cf) v8 Абонемент ($m) Практика программирования Администрирование данных 1С Внешние источники данных

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

1 стартмани

06.12.2015    40814    44    YPermitin    19       

Прайс-лист с картинками в EXCEL из 1С: УТ10, УПП, КА (с формой заказа) 26

Отчеты и формы Руководитель проекта Внешняя обработка (ert,epf) v8 КА1 УТ10 УПП1 Windows Оптовая торговля Абонемент ($m) Ценообразование, прайсы Загрузка и выгрузка в Excel

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

9 стартмани

26.11.2015    26676    61    spy-83    19       

Автоматическая подстановка уничтожений временных таблиц в текст запроса 7

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Универсальные функции

Функция, которая сама подставляет в текст запроса "УНИЧТОЖИТЬ" в местах последнего использования ВТ.

1 стартмани

14.11.2015    15055    SeiOkami    3       

Загрузка УПД в Бухгалтерию 3.0 11

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 v8::БУ БП3.0 Россия БУ Windows Оптовая торговля Абонемент ($m) Обработка документов Загрузка и выгрузка в Excel

Загрузка УПД из Excel в Бухгалтерию предприятия 3.0, с добавлением номенклатуры, ГТД, стран происхождения.

3 стартмани

20.10.2015    10550    7    teyana    12       

Выгрузка и загрузка данных из файла Excel с поиском по любым полям (есть поиск по ссылке, всего три итерации поиска. Управляемые формы или "Такси") 43

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Windows Абонемент ($m) Загрузка и выгрузка в Excel Обработка документов

Обработка позволяет загружать данные с поиском по ссылке как для загружаемого объекта, так и его свойств. Загружает справочники, документы, планы видов характеристик. Будет полезна как замена использования конвертации данных для задач переноса, а также как классическая загрузка из табличного документа (Excel). Поиск объекта при загрузке выполняется до трех раз с разными полями поиска (поля поиска настраиваются). Также реализована выгрузка в Excel по ссылкам. У обработки удобный интерфейс, в котором разберется даже начинающий пользователь. Загрузка накладных из файлов xls реализована с интеллектуальным поиском колонок с данными. В интеллектуальном поиске поддерживаются все основные типовые печатные формы.

5 стартмани

16.10.2015    47734    528    primat    29       

Быстрое определение интервалов в запросе 177

Инструменты и обработки Программист Внешний отчет (ert,erf) v8 Абонемент ($m) Практика программирования

В статье описывается новый метод определения интервалов между данными различных записей в запросе. В отличие от общеизвестного метода, время работы предлагаемого метода зависит от объема данных ЛИНЕЙНО. Это обеспечивает ему значительный выигрыш по быстродействию на больших объемах данных. В качестве иллюстрации возможностей метода приведен отчет, показывающий гистограмму распределения времени между продажами.

1 стартмани

01.10.2015    41745    32    ildarovich    41       

Полезные приемы при работе с Excel из 1С (Версия 3.1) 486

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Практика программирования Разработка внешних компонент Загрузка и выгрузка в Excel

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

1 стартмани

22.09.2015    134101    444    Zerocl    60       

Прыг-Скок...или из MS EXCEL в 1С (8.2) (открытый код) 184

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Обработка документов Обработка справочников Загрузка и выгрузка в Excel

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

1 стартмани

16.09.2015    49850    373    Tatitutu    49       

Code First и Linq to EF на примере 1С версии 7.7 и 8.3 часть I 10

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 Windows Абонемент ($m) Практика программирования

Данный проект является чисто исследовательским примером использования Code First и Linq to EF на примере 1С версии 7.7. Так как сам я программист 1С, то мне всегда было интересно, как можно перенести модель объектов 1С на компилируемые языки, и использовать мощь Linq to EF. С появлением Code First давно хотел прикрутить, но все как-то руки не доходили, и вот, наконец ..

1 стартмани

28.08.2015    17923    4    Serginio    2       

[Расширение] Контроль отрицательных остатков по регистру бухгалтерии при проведении 58

Инструменты и обработки Системный администратор Программист Расширение (cfe) v8 1cv8.cf Россия БУ Windows Учет ТМЦ Абонемент ($m) Инструментарий разработчика Универсальные функции

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

1 стартмани

17.08.2015    38247    167    ekaruk    31       

Универсальная учетная система с конструктором документов и справочников в режиме 1С: Предприятие 95

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf УУ Windows Абонемент ($m) Инструментарий разработчика Практика программирования

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

1 стартмани

29.07.2015    26000    141    informa1555    39       

Обмен прайс-листами и анализ ценовой политики конкурентов, партнёров и поставщиков в программе 1С:Предприятие 2

Инструменты и обработки Бизнес-аналитик Руководитель проекта Внешняя обработка (ert,epf) v8 УТ10 УПП1 УУ Windows Ценообразование, анализ цен Абонемент ($m) Ценообразование, прайсы Обработка документов Загрузка и выгрузка в Excel

Универсальная программа для загрузки Прайс-листов в базу 1С:Предприятия 8. Основные достоинства: простота использования и широкие функциональные возможности поиска товаров для записи цен. Область применения: обмен прайс-листами и анализ ценовой политики конкурентов, партнёров и поставщиков в программе 1С:Предприятие.

10 стартмани

16.07.2015    23559    4    Destroy    2       

Методы для группировки данных по полю,полям в Таблице Значений на примере универсального метода списания по партиям, а также отбора строк в ТЗ по произвольному условию. Для 8.x и 7.7 4

Инструменты и обработки Программист Внешняя обработка (ert,epf) v7.7 v8 1cv8.cf 1cv7.md Windows Абонемент ($m) Практика программирования Универсальные функции

Я очень часто использую группировку данных по полю и полям, как в восьмерке, так и в семерке. Это аналог запроса Итоги, но там строится дерево, а в большинстве случаев нужны "плоские данные". Да и делать запрос в большинстве случаев более накладный процесс, чем работа с ТЗ. Все достоинства такого подхода приведены на примере метода универсального списания по париям, а так же отбора строк в ТЗ по произвольному условию. Для 7.7 еще отчеты сравнения двух ТЗ. Работая с различными базами для упрощения сравнения номенклатуры, или как аналог джойнов(join), сделал сравнение двух таблиц значений по нескольким полям. Пока группировки полей должны быть уникальны. Часто приходится искать дубли, для универсального поиска есть ДублиВТзПоПолю и пример в Тест.ert.

1 стартмани

25.06.2015    21064    4    Serginio    1       

И снова "Как сжать картинки для экспорта в EXCEL?" или Умная картинка 8.2 14

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Практика программирования Загрузка и выгрузка в Excel

Прошла уже эпоха , когда экономили на трафике интернета. Но все же...повторюсь. Я предлагаю совершенно новый способ сжатия картинки - эффект в 20 раз !!!

1 стартмани

17.06.2015    22501    54    Tatitutu    10       

Подсистема "Планировщик" (версия 1.1) 138

Отчеты и формы no Конфигурация (md, cf) v8 1cv8.cf Россия Абонемент ($m) Практика программирования WEB Работа с интерфейсом

Конфигурация с подсистемой "Планировщик" (календарь). Бесплатная открытая версия для свободного использования не включает двустороннюю интеграцию с сервисом Google и Outlook.com.

5 стартмани

02.03.2015    55737    463    vandalsvq    62       

Работа с Excel. Объединение, Стыковка, Свертка 4

Инструменты и обработки no Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Универсальные обработки Загрузка и выгрузка в Excel

Обработка позволяет работать как с одним, так и с несколькими файлами Excel: Объединять файлы со сходной структурой в одну таблицу, Стыковать файлы с разной структурой по ключевому полю, Группировать результат по выбранным полям и суммировать числовые поля.

1 стартмани

19.02.2015    18403    35    Ekovichev    7       

daСклонение: склонение ФИО, должностей, чисел, прилагательных, существительных на языке 1С + ТестЦентр 207

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Универсальные функции

Функция предназначена для склонения выражений, которые часто требуется при формировании печатных форм договоров и прочих печатных форм. Функция склоняет по падежам ФИО, должности, числительные, валюты, единицы измерения, предметы. Также функция склоняет глаголы и прилагательные по числам и родам и существительные по числам. Имеется режим определения рода переданного выражения. Поддержка форматной строки для вывода результата. Функция не использует внешние библиотеки и веб-сервисы, написана на чистом языке 1С, и поэтому легко встраивается в любую конфигурацию или внешнюю обработку. Правила склонения оформлены в виде таблицы и могут быть легко изменены при необходимости.

1 стартмани

14.02.2015    89319    104    daMaster    87