Технология внешнего сохранения расчетов

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

Разработка - Инструментарий разработчика

10
Довольно длительное время я сопровождал расчет бонусов в одной организации. Нюанс заключался в том, что алгоритмы и сами структуры данных для расчета постоянно менялись, порой кардинально.  Чтобы анализировать данные за период, нужно было сохранять данные расчетов, т.к. воспроизвести их было не реально. Однако возник вопрос: в каком формате сохранять, если в таблицах постоянно добавлялись и удалялись колонки, кроме ключевых?
Решено было сохранять таблицы расчетов во внешние файлы, а затем их восстанавливать при необходимости.
Технология оказалась удачной, хочу поделиться опытом.
Формальная постановка задачи

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

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

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

Первая попытка

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

Что-то вроде таблицы с полями: IDТаблицы, IDПоля, Значение.

Но не получилось, возникли проблемы:

  1. База слишком быстро выросла в объеме, что сказалось на размерах бэкапа.
  2. Сохранение в таблицу и получение информации работало крайне медленно.

Такая методика не годилась.

Использование внешних данных

Все таблицы расчетов решено было сохранить в каталог на сервере в виде отдельных файлов.

Т.к. расчеты делались за половинки месяцев, то для каждой половины месяца создавались подкаталоги с названиями вида YYYYMM01 и YYYYMM16. Можно было обойтись без деления на подкаталоги, просто указывать адрес для файла в его имени, но подкаталоги используются потому, что Windows плохо работает с каталогами с огромным количеством файлов.

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

Вот пример файлов в каталоге:

В каждый файл сохраняется таблица через функцию ЗначениеВСтрокуВнутр, обратно разворачивается через ЗначениеИзСтрокиВнутр.

Статистика

Один расчет по 40 подразделениям за полмесяца занимает 150 Мб:

Все расчеты за полгода занимают 7 Гб:

Вот как выглядит каталог с расчетами Sequoia View с расчетами за полгода:

Бэкапить такие файлы удобно, не нужно хранить лишнюю информацию в базе.

Образцы кода

В разделе собран полезный для организации таких хранилищ код.

Библиотека для работа с Расчетами:

Функция ПолучитьКаталогСохраненияРасчетов(Дата) Экспорт

       БазовыйКаталог = СокрЛП(Справочники.САПКонстантыЛокальные.КаталогСохраненияРасчетов.Значение);

       Если БазовыйКаталог = "" Тогда

             Возврат БазовыйКаталог;

       КонецЕсли;

      

       ПодКаталог = Формат(Дата, "ДФ=yyyyMMdd");

      

       Возврат САП.СоздатьКаталогЛога(БазовыйКаталог, ПодКаталог, ложь);

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

 

Функция ПолучитьИмяФайлаРасчетов(Магазин, Интервал, ИмяТаблицы) Экспорт

       ИмяФайла = СокрЛП(Магазин.Код) + "_" + Формат(Интервал.ДатаНачала, "ДФ=dd_MM_yyyy") + "_" + Формат(Интервал.НомерПериода, "ЧН=0; ЧГ=") + "_" + ИмяТаблицы+".txt";

       Возврат ИмяФайла;

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

 

Функция ПолучитьИмяФайлаРасчетовПолное(Магазин, Интервал, ИмяТаблицы) Экспорт

       Каталог = ПолучитьКаталогСохраненияРасчетов(Интервал.ДатаНачала);

       Если НЕ ЗначениеЗаполнено(Каталог) Тогда

             Возврат Неопределено;

       КонецЕсли;

       ИмяФайлаРасчетов = ПолучитьИмяФайлаРасчетов(Магазин, Интервал, ИмяТаблицы);

       ИмяФайлаПолное = Каталог + "\" + ИмяФайлаРасчетов;

      

       Возврат ИмяФайлаПолное;

      

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

 

 

Функция СохранитьРасчет(Магазин, Интервал, ИмяТаблицы, Таблица) Экспорт

       ИмяФайла = ПолучитьИмяФайлаРасчетовПолное(Магазин, Интервал, ИмяТаблицы);

       Если ИмяФайла = Неопределено Тогда

             Возврат Неопределено;

       КонецЕсли;

      

       Попытка

             Значение = ЗначениеВСтрокуВнутр(Таблица);

             Т = Новый ТекстовыйДокумент();

             Т.УстановитьТекст(Значение);

             Т.Записать(ИмяФайла, "UTF-8");

            

             Возврат ИмяФайла;

       Исключение

             ОписаниеОшибки = ОписаниеОшибки();

            

             //Если Найти(";ТЗСебестоимость;", ";" + ИмяТаблицы + ";") <> 0 Тогда

             //     Сообщить("Не смогли преобразовать таблицу для сохранения в файл: " + ИмяФайла +  "  " + ОписаниеОшибки, СтатусСообщения.Важное);

             //Иначе

             ВызватьИсключение "Не смогли преобразовать таблицу для сохранения в файл: " + ИмяФайла +  "  " + ОписаниеОшибки;

             //КонецЕсли;

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

      

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

 

Функция ВосстановитьРасчет(Магазин, Интервал, ИмяТаблицы) Экспорт

       ИмяФайла = ПолучитьИмяФайлаРасчетовПолное(Магазин, Интервал, ИмяТаблицы);

       Если ИмяФайла = Неопределено Тогда

             Возврат Неопределено;

       КонецЕсли;

      

       Попытка

              Т = Новый ТекстовыйДокумент();

             Т.Прочитать(ИмяФайла, "UTF-8");

             Текст = Т.ПолучитьТекст();

             Значение = ЗначениеИзСтрокиВнутр(Текст);

       Исключение

             Возврат Неопределено;

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

       Возврат Значение;

      

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

 

Пример использования в расчетах:

       Для Каждого Магазин из ВыбМагазины Цикл

             Для Каждого Интервал Из ВыбИнтервалы Цикл

                    #Если Клиент Тогда

                           Состояние("Бонусы. Магазин: " + Магазин + "Интервал: " + Интервал);

                    #КонецЕсли

                   

                    ТЗСтавки = ВосстановитьРасчет(Магазин, Интервал, "ТЗСтавки");

                    Если ТЗСтавки = Неопределено Тогда

                           Сообщить("Не найден расчет ТЗСтавки: " + " Магазин: " + Магазин + "Интервал: " + Интервал);

                           Продолжить;

                    КонецЕсли;

                   

                   

                    Для Каждого Стр ИЗ ТЗСтавки Цикл

                    КонецЦикла;

                   

                   

                    ТЗПозиции = ВосстановитьРасчет(Магазин, Интервал, "ТЗПозиции");

                    Если ТЗПозиции = Неопределено Тогда

                           Сообщить("Не найден расчет ТЗПозиции: " + " Магазин: " + Магазин + "Интервал: " + Интервал);

                           Продолжить;

                    КонецЕсли;

                   

                   

                   

                    Для Каждого Стр ИЗ ТЗПозиции Цикл

                          

                    КонецЦикла;

                   

 

                   

             КонецЦикла;

            

       КонецЦикла;
10

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

Комментарии
Избранное Подписка Сортировка: Древо
1. wunderland 199 20.09.12 15:23 Сейчас в теме
Специфическая технология, но как вариант... Sequoia View - порадовала, старенькая программка, молодеж и не знает наверно...
2. fixin 3870 20.09.12 15:54 Сейчас в теме
(1) а что же юзает молодеж? гыгыгы. Чтобы заценить свободное место на диске?
3. Rustig 1198 20.09.12 19:59 Сейчас в теме
(0) плюс за повод обсудить...
мое: я развернул дополнительно три файловые базы 1С (первые две уже заполнились до 4 Гб, теперь третья юзается), через ComСоединение из основной рабочей базы происходит чтение/запись информации в/из внешних баз 1С, написал алгоритм рекурсивного получения данных из баз, то есть если в первой базе нет значений, смотрим во вторую, если во второй нет, смотрим в третью, и так до последней, на любое количество баз рассчитано, через константу установил ограничение в три базы.
Использовал примерно ту же суть - вынес хранение информации за пределы основной рабочей базы. На вопрос сисадмина, почему не храню в каталогах? - ответил, что в этих дополнительных базах я могу управлять данными на своем родном языке 1С. :)
Программу Sequoia View не знаю, я из молодежи, и больше внедренец, чем железячник :)
5. wunderland 199 21.09.12 09:38 Сейчас в теме
(3)<и больше внедренец, чем железячник :)>
железячник, тут ни при чем, прога позволяет быстро оценить, кто все место на диске съел... а в своё время использовалась для быстрого поиска э ... интересного видео на чужом винте. Винты были маленькие, а видеофайлы - большие. Запустил прогу, и сразу видно где лежит...
6. fixin 3870 21.09.12 10:33 Сейчас в теме
(3) я тоже мог бы через COM, но таблицы нерегулярной структуры все равно пришлось бы универсализировать и терять на времени.
Если бы 1с давала на лету менять состав колонок, тогда да, можно было бы. А так проще в ТЗ.
(4) в прямоугольнике информации больше помещается, чем на круге. компактнее
7. iov 364 21.09.12 12:58 Сейчас в теме
(6) не отказывайте себе в удовольствии - поюзайте + там есть интеграция в проводник... Это не реклама. Я сам на эту программку подсел когда активно серверами занимался... очень быстро находились профили наглых пользователей... Хотя нет - звучит как реклама... пойду к автору возьму процент от стоимости программы... ;)
8. fixin 3870 21.09.12 13:26 Сейчас в теме
(7) я ж говорю - мне круги не нравятся. чисто из-за того, что неэффективно место визуализации расходуется.
9. iov 364 21.09.12 13:33 Сейчас в теме
(8) То есть вас тоже бесит круглая кнопка пуск ? :) ненавижу заразу :)
P.Sы - шутк.
4. iov 364 20.09.12 22:15 Сейчас в теме
(0)(1)(2)
http://www.4shared.com/photo/E9mLDQVk/Scanner.html вот такое вам знакомо?
http://www.steffengerlach.de/freeware/ вот сайт - все бесплатно как вы любите...
Оставьте свое сообщение

См. также

Фреймворк для создания бизнес web-приложений 15

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

Для создания систем, решающих узкие бизнес задачи, использовать 1С бывает нецелесообразно. Хочу представить альтернативу - web фреймворк katejs. Будет интересно также тем, кто интересуется web разработкой на современном javascript.

15.10.2019    1829    nep_i    24       

FastCode - сервис поиска кода 1С 48

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

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

10.09.2019    4902    m.bolsun    21       

Как мы разрабатываем в EDT 62

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

EDT – это новая среда разработки, на которую сейчас перешли разработчики фирмы «1С». Однако до сих пор существует ряд «белых пятен», касающихся как теоретической, так и практической части применения этого инструмента. Про опыт перехода на разработку в EDT на конференции INFOSTART EVENT 2018 EDUCATION рассказал начальник сектора разработки в компании «Группа Полипластик» Владимир Крючков.

23.08.2019    5236    ivanov660    21       

1С:EDT. Первые шаги… или есть ли альтернатива конфигуратору? 81

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

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

15.08.2019    7832    ellavs    76       

Отказ от использования хранилищ 1С, переход на Git. 70

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

Валерий Максимов в своем докладе на конференции INFOSTART EVENT 2018 EDUCATION делится опытом перехода нескольких команд (более 100 разработчиков) от использования хранилищ 1С на системы контроля версий Git.

25.07.2019    6041    theshadowco    31       

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

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

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

17.07.2019    8971    ids79    24       

Групповая обработка (Управляемая консоль отчетов) 26

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

Статья предназначена тем, кто понимает, зачем нужна групповая обработка в консоли запросов. Рассматривается групповая обработка в консоли Управляемая консоль отчетов.

13.05.2019    3558    Evg-Lylyk    6       

Быстрый ввод неудобных символов 66

Статья no Нет файла Бесплатно (free) Пользователю системы Инструментарий разработчика

Использование Alt-кодов для ввода “[”, “]”, “”, “&”, “#”, “|”

15.04.2019    5231    pparshin    24       

Перенос и резервное копирование настроек конфигуратора 55

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

Удобный перенос между рабочими местами и резервное копирование настроек конфигуратора через подсистему "Инструменты разработчика".

14.04.2019    5054    tormozit    18       

Как добавить типовую форму для СКД (для начинающих) (1С 8.3, управляемые формы) 9

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

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

25.03.2019    5417    ellavs    9       

Расширение конструктора мобильного рабочего места для варианта "клиент 1С+RDP" (для любых wi-fi терминалов). Экосистема решений Simple WMS 20

Статья Программист Бизнес-аналитик Руководитель проекта Нет файла v8::УФ УУ Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ Бесплатно (free) Инструментарий разработчика Сканер штрих-кода Терминал сбора данных Универсальные функции Мобильная разработка

Развитие проекта «Конструктор мобильного клиента на Android» https://infostart.ru/public/976636/ для устройств не на Андроиде (работающих в режиме RDP). В отличие от варианта Android работа на терминалах происходит в режиме 1С:Предприятие через RDP а конфигурации мобильных клиентов полностью совместимы для обоих версий. Т.е. конфигурация единая, создается один раз и ее может читать как Android -устройство, так и 1С-клиент на RDP без необходимости какой либо переделки.

05.02.2019    5996    informa1555    0       

Git + 1С. Часть 2. Реализация Git workflow в 1С-разработке по шагам 128

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

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

28.01.2019    9867    stas_ganiev    18       

Автоматизация тестирования с помощью WinAutomationUI 28

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

Рассматривается использование инструмента WinAutomationUI для создания автоматизированных сценарных тестов на примере 1 + 1 = 2.

11.12.2018    3932    AlexKo    30       

[8.3] Анализ планов запросов (Управляемая консоль отчетов) 131

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

Новый инструмент! Позволяет удобно работать с планами запросов, анализ планов в файловой базе.

19.11.2018    14080    Evg-Lylyk    6       

Метрики, графики, статистика = Prometheus + Grafana 109

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

Снятие метрик из базы данных 1С с хранением в Phrometheus и красивое оформление на основе Grafana. Или как мы создавали комфортные условия административному персоналу на отдельно взятом складе.

23.10.2018    9647    197    freewms    64       

Git + 1С. Часть 1. Как подключиться к команде разработки и начать использовать Git 269

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

Первая статья из цикла инструкций по работе с Git в 1С-разработке. Рассмотрим, как настроить рабочее место, как получить свою "копию" проекта для разработки и приступить к полезным действиям. Все примеры будут изложены в рамках трёх практических кейсов: 1. Моя команда дорабатывает типовую конфигурацию, использует приватный репозиторий на BitBucket, в котором версионируются внешние отчеты/обработки, расширения конфигураций и правила обмена; 2. Я участвую в стартап-команде, которая разрабатывает свою конфигурацию с использованием Git и GitLab; 3. Я принимаю участие в развитии OpenSource-продукта на GitHub как заинтересованный разработчик (контрибьютор).

18.10.2018    33972    stas_ganiev    72       

Взгляд на практику разработки в EDT из зазеркалья 115

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

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

26.07.2018    17432    ivanov660    104       

Практика применения инструментов продвинутого разработчика 1С 155

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

Статья адресована разработчикам. Будет чуть-чуть теории, будут воспоминания, и потом пойдет практика.

23.07.2018    19664    artbear    22       

Лайфхак: исходники внешних обработок и отчетов 1С - это просто. 33

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

Важно: статья далеко на любителя всяких таких git'ов, gitlab'ов и oscript'ов.

22.06.2018    7686    new_user    11       

Создание поставки конфигурации 97

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

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

27.02.2018    13499    Vladimir_412    6       

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

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

Легкий способ обновления измененной конфигурации. Сервис подготовки расширения конфигурации

25.10.2017    18595    avk72    63       

Metadata.js для построения дешевых высоконагруженных сервисов 199

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

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

08.08.2016    32585    unpete    100       

Формы для 1script 134

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

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

01.08.2016    22156    ret-Phoenix    100       

Консоль запросов для УФ с возможностью передачи готовой ТЗ в качестве параметра 15

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

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

11.07.2016    12516    vadim1011985    7       

Wiki движки для публикации пользовательской документации 32

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

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

09.07.2016    17781    kuld    4       

Поиск несериализуемых значений при помещении в хранилище 12

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

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

02.03.2016    20167    balanton    2       

Подсветка синтаксиса 1С в текстовых редакторах Atom, Sublime Text, VS Code 101

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

Пакеты, добавляющие поддержку синтаксиса языка 1С:Предприятие 8 в текстовые редакторы Atom, Sublime Text и VS Code. И не только.

02.02.2016    22769    nixel    38       

Дай дернуть! О веб-сервисах, Linux'ах и добрых поисковых сайтах 61

Статья Программист Нет файла v8 1cv8.cf Linux Бесплатно (free) Инструментарий разработчика Администрирование данных 1С WEB

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

30.12.2015    22555    starik-2005    4       

xUnitFor1C - набор инструментов для выполнения тестирования (модульного/юнит, приемочного, сценарного для 1С 8.3, интеграционного) в 1С:Предприятии 8 178

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

xUnitFor1C - простой и мощный фреймворк для тестирования в 1С. Позволяет тестировать в разных режимах обычное приложение, тонкий и толстый клиент управляемого приложения. Поддерживаются любые платформы 1С - от 8.2.17 до 8.3.5 и выше. Любые наборы тестов могут прогоняться в полностью автоматическом режиме. Автозапуск используется в различных build-серверах в системах Continuous Integration. Также возможно очень простое создание тестовых данных на основании табличных макетов. Эти макеты можно генерировать из реальных боевых данных. Полученные данные в тестах загружаются одной строкой кода. В статье я кратко описал историю продукта + вставил небольшое описание различных возможностей нашего фреймворка + список полезных статей/примеров/видео, обучающих/рассказывающих о практическом применении инструмента

13.11.2015    37358    artbear    45       

Сервис обмена кодом 28

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

Бывало так, что вам нужно быстро показать кому-то свой код, но опубликовать его негде, так как популярные сервисы просто не поддерживают раскраску кода 1С? Теперь решение есть!

26.06.2015    17829    Infactum    23       

Многопоточность в 1С, клиент-серверный вариант 59

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

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

21.06.2015    30298    starik-2005    50       

Универсальная функция для программного выполнения СКД 110

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

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

20.05.2015    26686    dj_serega    18       

1C:Enterprise Development tools (EDT) или кодим в Eclipse 254

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

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

11.04.2015    70915    DitriX    297       

Bugs must die! или Как повысить качество внедрений инструментами тестирования 48

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

Речь в статье пойдет про тестирование, про качество программ и про то, как можно процесс тестирования автоматизировать. Статья написана по итогам доклада, прочитанного автором на Конференции IE 2013 Еvolution 23-24 мая 2013 года. Также она напечатана в Журнале Инфостарта №2.

03.03.2015    17796    eu_genij    17       

Перевод интерфейса конфигурации с использованием программы 1С:Переводчик 33

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

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

09.02.2015    28345    boogie    21       

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

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

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

29.09.2014    92589    8926    ekaruk    123       

Типовой механизм упрощенного изменения конфигурации в ERP 2.0 и УТ 11 212

Статья Системный администратор Программист Нет файла v8 УТ10 ERP2 Windows Бесплатно (free) Инструментарий разработчика Практика программирования Работа с интерфейсом

В ERP 2.0 (и соответственно в УТ 11) появился функционал для упрощенной возможности модификации конфигурации разработчиками. Он касается в частности изменения форм объектов и размещения подписок на элементы, теперь задача изменения конфигурации на поддержке упростилась. Также появились дополнительные возможности в новой версии платформы 8.3.5, которые также упростят задчу.

22.09.2014    49707    ivanov660    49       

Просмотр SQL-таблиц из 1С. Возможность очистки таблиц 26

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

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

29.08.2014    18658    377    Abadonna    4       

TurboConf:Шаблоны - сервис для поиска и хранения фрагментов кода 43

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

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

13.08.2014    19893    m.bolsun    68       

Консоль запросов. Очередная гайка. 18

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

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

23.07.2014    6453    mdmdvd    3       

Анализ запросов с помощью SQL Profiler 219

Статья Системный администратор Программист Нет файла Windows Бесплатно (free) Производительность и оптимизация (HighLoad) Инструментарий разработчика Администрирование данных 1С

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

22.07.2014    67562    Andreynikus    20       

Сохранение в Excel из WEB-клиента 13

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

Не всегда корректно отрабатывает сохранение в Excel из 1C при работе в WEB-клиенте. Мне попалась ситуация, когда не отрабатывал код "ТабличныйДокумент.Записать(...)" и выдавалась ошибка "неизвестная ошибка.: object doesn't support this property or method" Ниже предложена процедура сохранения в Excel, корректно работающая во всех типах подключения.

24.04.2014    18385    Tavalik    1       

Подсистема "COMExchange": консоль запросов в режиме «Консоль кода». 8

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

Описана возможность использования обработки «Консоль запросов 1С+ADO» в качестве «консоли кода». При этом имеется возможность помещения результатов вычислений в «табло формул». Кроме результатов вычислений в это «табло» можно также вывести время выполнения и описание обработанных ошибок времени исполнения.

03.04.2014    23439    yuraos    2       

Автоматизированное тестирование в 8.3 163

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

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

06.03.2014    54469    M.Shalimov    45       

Изменение данных среды выполнения «на лету» в процессе отладки с помощью внешней обработки 9

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

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

13.02.2014    7854    Рэйв    7       

Перенос таблицы значений между клиентом и сервером 50

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

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

10.12.2013    76748    Draconus    35       

Коллективная разработка на 1С версии 7.7 и Git 21

Статья Программист Нет файла v7.7 Россия Windows Бесплатно (free) Инструментарий разработчика Разработка внешних компонент

В данной статье я не буду рассматривать работу с системой контроля версий Git, для этого есть специальные ресурсы, например http://git-scm.com/book/ru. Я только расскажу тем, кто привык и любит Git, подружить старую добрую 7-ку и систему контроля версий Git.

17.09.2013    15239    s.nek    12