Использование структур для передачи параметров функций

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

Разработка - Математика и алгоритмы

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

Использование структур для передачи параметров функций

Описана полезная технология для передачи контекста через структуры.

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

На входе у нас есть некоторые параметры - П1, П2, ... ПN.

Далее по мере продвижения выполнения кода на основе этих параметров вычисляются другие значения - З1, 32, ... ЗM.

Функциональный блок сделан в виде набора функций Ф1 ... ФK, которые вызываются друг из друга.

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

Как добиться, чтоб значения П и З были доступны во всех нужных функциях, или в каждой из функций?

Можно завести глобальные переменные П1, П2, ... ПN и З1, 32, ... ЗM. Тогда проблема решена.

Но это плохое решение, т.к.:

  1. Глобальные переменные используются только на момент работы функции, в остальное время просто занимают память.
  2. Нарушается принцип изолированности функции, т.е. функция использует внешние данные.
  3. На сервере нельзя использовать глобальные переменные.

Второй вариант - во всех функциях передавать все необходимые значения П1, П2, ... ПN и З1, 32, ... ЗM.

Но это тоже плохое решение, т.к.:

  1. Нужно очень четко контролировать, какие переменные где нужны. Если что-то забыли, придется добавлять нужные переменные.
  2. Очень сильно растет стек, т.к. используется большое число параметров.
  3. Сложно добавить новый параметр, т.к. придется править все вызовы по передаче параметров.

Поэтому идеальное решение - использовать структуру для передачи контекста.

Обычно в своих решениях я даю ей наименование П.

При входе в блок я создаю структуру, в которой заполняю все исходные данные:

П = Новый Структура("П1, П2, ... ПN", П1, П2, ... ПN);

А затем вызываю первую функцию функционального блока.

Если какая-то из функций вычисляет значение, которое понадобится другой, то это значение просто добавляется в переменную контекста:

П.Вставить("ЗI", ЗI);

Таким образом, практически все функции блока имеют только один параметр - П.

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

Пример с единой переменной:

Функция ОбойтиУровень(П)

  Если П.Уровень = 0 Тогда

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

  КонецЕсли;

  ТекУровень = П.Уровень;

  П.Уровень = П.Уровень - 1;

  ТекУровень = П.Уровень;

  ОбойтиУровень(П);

  П.Уровень = ТекУровень;

  ОбработатьУровень(П.Уровень);

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

Пример с дополнительной переменной выглядит красивее:

Функция ОбойтиУровень(П, Уровень)

  Если Уровень = 0 Тогда

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

  КонецЕсли;

  ОбойтиУровень(П, Уровень - 1);

  ОбработатьУровень(П, Уровень);

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

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

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

Если посмотреть код типовых (например, процедуры партионного учета), то видно, что структуры используются для агрегирования множества мелких значений (сама жизнь заставляет так поступать), иначе бы у процедур было по 20-30 параметров. Но объединение переменных в единый контекст пока еще не осуществляется, хотя переменные и путешествуют вместе по всему блоку проведения и расчета партий. Поэтому чтобы добавить свои промежуточные данные, приходится искать, в какую из имеющихся структур можно их включить.

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

 

9

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

Комментарии
Избранное Подписка Сортировка: Рейтинг
5. Angeros 07.12.11 05:11 Сейчас в теме
Коллега вам в журнализты надо было податься, столько воды из пальца высосать это надо уметь. Ну и как бы структуры для передачи параметров используются во всех типовых.
Yashazz; larisab; Dolly_EV; +3 Ответить 1
14. Ёпрст 1036 07.12.11 14:44 Сейчас в теме
Если че, в клюшках Структура есть сто лет в обед, и Вектор и АссоциативныйВектор..
Арчибальд; +1 Ответить 1
1. mrd_84 07.12.11 01:10 Сейчас в теме
2. Поручик 4332 07.12.11 01:30 Сейчас в теме
(0) 1С: Бухгалтерский учет 7.7; 1С: Оперативный учет 7.7; 1С: Расчет 7.7; 1C: OpenConf 7.7
В клюшках есть структуры? Или это глюк сайта, эти разделы сами добавляются?
3. Поручик 4332 07.12.11 01:34 Сейчас в теме
Статья полезная новичкам, хотя идея использовать структуру для передачи параметров или контекста не нова. Сам использовал структуры ещё года три назад.
4. fixin 3882 07.12.11 01:38 Сейчас в теме
(2) В клюшках есть списки, которыми можно моделировать структуры, подход от этого не меняется, не буквоедствуйте.
(3) Ну вот пусть и читают. ;-)
6. TrinitronOTV 07.12.11 06:36 Сейчас в теме
да уж, дискуссия....
а передача параметров по ссылке?
7. fixin 3882 07.12.11 08:33 Сейчас в теме
(5) но не регулярно. Типовые вообще отличаются в этом плане лоскутностью. Где-то используются, где-то тащат хвост из 10 параметров... ;-) К тому же у меня есть еще вложенные структуры для рекурсивных функций, это самоценный по себе материал.
(6) Вы о чем? Речь идет о минимизации количества таскаемых из функции в функцию параметров.
8. dusha0020 897 07.12.11 10:21 Сейчас в теме
И все-таки создание списков значений в клюшке весьма трудоемкий процесс. И как быть с передачей по ссылке?
9. alex_bob 221 07.12.11 11:01 Сейчас в теме
У описанной технологии есть отрицательные стороны - за всё надо платить.
1. Функция не знает, есть ли в переданной структуре нужные элементы структуры и какие они имеют типы. Следовательно всё нужно проверять внутри функции, что может влиять на производительность.
2. На извлечение элементов из структуры тратится определенное время. Если функция будет внутри цикла, то это может быть ощутимо.
Возможно именно поэтому такой подход и применяется не повсеместно, а лишь в некоторых местах.
10. Арчибальд 2708 07.12.11 11:02 Сейчас в теме
(8)
создание списков значений в клюшке весьма трудоемкий процесс

СоздатьОбъект("СписокЗначений") - 31 символ
Новый Структура - 15 символов
Т.е. трудоемкость в семерке вдвое превышает восьмерочную.
Установить - 10 символов
Вставить - 8 символов
И здесь 25% выигрыша.
Получить - 8 символов
Свойство - тоже 8. тут трудоескость совпадает :(
11. zfilin 2108 07.12.11 11:08 Сейчас в теме
(8) Ну, не такой уж и трудоемкий.

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

И, кстати, я бы сказал, что лучше было бы передавать несколько структур, сообразно сущностям, которые объединяют параметры. Например, если в некую функцию передается "Город", "Улица", "Дом", "ФИО", "ДатаРождения", "ИНН", то возможно это логично разбить на две структуры: "Адрес" ("Город", "Улица", "Дом") и "Контрагент" ("ФИО", "ДатаРождения", "ИНН"). А вообще, читайте Мартина у него хорошо об этом написано.
12. zfilin 2108 07.12.11 11:18 Сейчас в теме
(9) Ну. В 1С типы и в описании параметров не проверяются. =)
И насчет проверки... Если вы обратитесь к параметру, который в функцию не передавали, так как не описывали в списке передаваемых параметров, то получите ошибку, так же как при обращении к несуществующему элементу структуры.
Хотя, в целом согласен, что структуры могут усложнить отладку, так как скрывают детали описания "интерфейса функции".
13. dusha0020 897 07.12.11 11:29 Сейчас в теме
(10) Арчибальд, А как насчет этого:
П = Новый Структура("П1, П2, ... ПN", П1, П2, ... ПN);

И этого:
П = СоздатьОбъект("СписокЗначений");
П.ДобавитьЗначение(П1,"П1");
П.ДобавитьЗначение(П2,"П2");

... до N ?
15. Арчибальд 2708 07.12.11 14:59 Сейчас в теме
(13) Про "ДобавитьЗначение" в моем посте ни слова нет. А в контексте статьи, если начальные значения (параметры) вычисляются, и вовсе не о чем говорить.
Новые (по сравнению с семеркой) Структура и Соответствие - это просто излишние "сущности", не имеющие никаких оснований для своего появления. Понятно, коненчно, что в плане Запросов (специально выделил восьмерочную морковку) они отличаются от (семерочного) списка значений возможностью индексирования по ключу. Однако до восьмерочного списка значений они не дотягивают по функционалу.
16. Арчибальд 2708 07.12.11 15:00 Сейчас в теме
(14) В клюшках есть все, кроме дурацких восьмерочных заморочек :))
17. zfilin 2108 07.12.11 17:25 Сейчас в теме
(16) Эге! Это не заморочки, это передача параметров в конструктор объекта! =)
18. Ёпрст 1036 07.12.11 17:38 Сейчас в теме
Кстати, Фиксин, ты прям восставший из ада!
Тебя вроде как изгнали отовсюду ?, ан нет, живой чертяка..
19. Поручик 4332 10.12.11 18:41 Сейчас в теме
(18) Подтверждение теории Кащея Бессмертного.
(16) Список заморочек в студию или вы не понимаете матчасти, это две совершенно разных среды.
20. luns 21.12.11 13:27 Сейчас в теме
(18) так если человек себя ведет прилично в обществе. делиться наработками, то это же всегда хорошо.
наверное прошел подростковый период.
21. fixin 3882 21.12.11 13:58 Сейчас в теме
(20) я каким был таким и осталя. Обработками делился всегда. В обществе веду себя соответственно этому обществу. Что-то я не понял вашей мысли.
22. luns 21.12.11 14:33 Сейчас в теме
(21) насчет обработок верно.
просто ранее высказывался порой не лицеприятно в адрес оппонентов и агрессивно реагировал на критику в свой адрес.
общество за это время кардинально не изменилось, а стиль общения с тобой теперь совсем иной.
вот я и сделал вывод что изменился ты, что очень хорошо.
вот такая мысль.
23. fixin 3882 21.12.11 14:48 Сейчас в теме
(22) возможно, возможно. Но когда ты Гений, постепенно перестаешь реагировать на Мосек, видимо поэтому я меньше огрызаюсь.
24. luns 21.12.11 15:27 Сейчас в теме
fixin пишет:

перестаешь реагировать на Мосек


Вот именно про такой стиль общения я и говорил.
Возможно я поспешил с выводами о взрослении :)
Оставьте свое сообщение

См. также

Подборка программ для взаимодействия с ЕГАИС Промо

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

"Хочу универсально!" [Часть 1] 67

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

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

02.09.2019    5912    SeiOkami    35       

Кодогенерация и метагенерация в 1С 26

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

В своем докладе на конференции INFOSTART EVENT 2018 EDUCATION Дмитрий Белозеров рассказал о разработке инструмента, позволяющего программно работать с метаданными 1С и писать скрипты для выполнения тех же действий, которые выполняет разработчик в конфигураторе –  с какими сложностями и нюансами пришлось столкнуться, и что получилось в итоге.

26.08.2019    4915    kirovsbis    28       

Многофункциональная выгрузка из 1С: Управление торговлей (УТ11, УТ10) в Бухгалтерию предприятия (БП2, БП3) Промо

Хотите точно знать, что вы выгружаете? Хотите сворачивать товары по НДС или фильтровать товары по доп. реквизиту? Вы волшебник, которому необходимо превращать одних контрагентов в других? Хотите при выгрузке превратить группу товаров в один? Или просто нужен удобный OLE обмен между 1C Управление торговлей (ред. 11 или 10) и 1С Бухгалтерия предприятия (ред. 2 или 3). Тогда эта обработка для вас!

9500 руб.

Иерархия без "В ИЕРАРХИИ" 120

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

Говорится о том, как эффективно представлять иерархию в СУБД, как получать и использовать эти представления при решении задач в запросной технике. Уточняются и дополняются запросы из статьи "Уровни, глубина, прародители, циклы и аналоги запросом" [https://infostart.ru/public/160707/].

22.08.2019    5570    ildarovich    17       

EnterpriseData – часть 3. Загрузка данных, идентификация объектов 64

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

Основные этапы загрузки данных через EnterpriseData. Идентификация объектов загружаемых полностью и по ссылке. Приведены схемы процессов загрузки данных. Описание основных операций и обработчиков. Перечень процедур БСП, используемых при загрузке данных, структура «КомпонентыОбмена».

22.08.2019    5345    ids79    7       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Запрос SQL для нахождения самого большого простого числа меньше заданного 6

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

Данный запрос MS SQL демонстрирует некоторые возможности MS SQL Server, о которых часто неизвестно большинству программистов 1С. В тексте постараюсь объяснить интерес данного запроса (или скрипта).

16.08.2019    1766    alex_bitti    18       

Обработчики событий при записи объектов. Зачем и что за чем? 216

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

Программисту, имеющему немного опыта на платформе 1С 8.3, бывает сложно разобраться: ПередЗаписью, ПриЗаписи, ПослеЗаписи, на сервере, на клиенте, в модуле формы, в модуле объекта.... Эта шпаргалка была создана в процессе обучения и реального опыта с целью разложить всё по полочкам, чтобы было четкое понимание в каком случае какой обработчик нужно использовать и в какой последовательности они запускаются при записи и проведении документов. Данная статья будет полезна в большей степени начинающим разработчикам. Но и опытным позволит освежить информацию, упорядочить её.

25.07.2019    15551    4    AlbinaAAA    24       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Как проводятся документы в типовых конфигурациях от 1С 139

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

В свое время, когда только начинал шаги в 1С и изучал, как проводятся документы в конфигурациях на платформе 1С по книге "Разработка управляемого интерфейса" (Хрусталева Е.Ю.), и там были представлены примеры совсем далекие от того, как сейчас проводятся документы в современных конфигурациях от 1С.

24.07.2019    17124    skv_79    32       

Управление качеством кода 140

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

О SonarQube, АПК, EDT. Какие преимущества дает их использование. Для каких команд подходит.

22.07.2019    9453    Stepa86    33       

Базовый курс для начинающих 1С-программистов. Пятый поток. Онлайн-курс с 12 февраля по 15 апреля 2020 г. Промо

Данный онлайн-курс является начальной ступенью по изучению базовых принципов программирования в системе “1С:Предприятие” и предназначен для обучения 1С-программированию “с нуля”.

4500/9500 рублей

Что делает "В ИЕРАРХИИ" в запросе? 101

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

Описание действий платформы 1С при использовании конструкции "В ИЕРАРХИИ" в запросах.

16.07.2019    9946    YPermitin    34       

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

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

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

25.06.2019    24464    ids79    17       

Перенос данных БП 2.0 => УТ 11 / КА 2 / ERP 2 (перенос остатков, документов и справочников из "1С:Бухгалтерия предприятия 8", ред. 2.0 в "1С:Управление торговлей 8", ред.11 / КА 2 / ERP 2). Обновлено до УТ 11.4.10.х, КА 2.4.10.х, ERP 2.4.10.х! Промо

Перенос позволяет загрузить в УТ 11 / КА 2 / ERP 2 документы за выбранный период, справочную информацию и остатки по счетам бух. учета. Переносятся остатки денежных средств, взаиморасчетов, остатки товаров и материалов на складах. Переносятся девятнадцать основных видов документов за выбранный период и вся нормативно-справочная информация. Есть фильтр по организации. Если нужно переносить что-то дополнительно, то обычно бесплатно дорабатываю правила (перед покупкой согласуйте необходимые доработки).

29700 руб.

Реализуем Стек, Очередь и Приоритетную очередь в 1С 52

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

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

24.06.2019    8295    RonX01    63       

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

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

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

10.06.2019    6302    DataReducer    12       

Перенос данных КА 1.1 => ERP 2 (ЕРП) (обработка переноса документов, остатков и справочной информации из "1С:Комплексная автоматизация, ред. 1.1" в "1С:ERP Управление предприятием, ред 2"). Обновлен до КА 1.1.115.х и ERP 2.4.10.х Промо

Обработка позволяет переносить из КА 1.1 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления в случае выхода новых релизов конфигураций 1С.

29700 руб.

Вычисление 200 тысяч знаков числа pi 73

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

В статье рассматриваются возможности платформы выполнять сверхточные вычисления без использования сложных алгоритмов и внешних компонент на примере вычисления числа pi.

28.05.2019    4279    Oleg_nsk    93       

Регистры накопления. Виртуальные таблицы. Часть №1: Обороты 87

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

Описание работы платформы 1С:Предприятие 8.2 с виртуальной таблицей "Обороты" регистров накопления.

20.05.2019    13039    YPermitin    5       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

Выдержки из книги Чистый код 25

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

Недавно я прочитал книгу "Чистый код" Роберта Мартина (Robert Cecil Martin). В ней описываются принципы организации и форматирование исходного кода программы так, чтобы в дальнейшем было легко поддерживать такой код. Эта книга является библией для многих программистов, но вот в среде программистов 1С, к сожалению, не очень распространено чтение подобной фундаментальной литературы. Книга более 400 страниц и так много порой лениво читать, да и времени всегда не хватает. По этому я решил выделить в виде цитирования по разделам самые важные моменты. А также снабдил текст своими примерами кода.

16.05.2019    6377    FreeArcher    82       

Что такое алгоритм? 6

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

Как ответить на этот вопрос и не попасть пальцем в небо.

25.02.2019    3604    mkalimulin    274       

Перенос документов, остатков и справочников КА 1.1 => КА 2 / УТ 11. Обновлено до КА 2.4.10.х и УТ 11.4.10.х! Промо

Более 130 компаний выполнили переход на КА 2 или УТ 11 с помощью нашей разработки! Позволяет перенести не только остатки и справочники (как типовая обработка), но и документы за нужный период времени. Предоставляем техподдержку, оперативно исправляем замечания, выпускаем обновления при выходе новых релизов программ 1С. Вы можете проверить разработку до покупки: сделаем бесплатный тестовый перенос из вашей базы КА 1.1 и предоставим доступ к базе-результату через веб-клиент!

29700 руб.

Криптовалюты, а также иные взгляды на природу денег в терминах 1С 6

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

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

28.01.2019    4170    mkalimulin    89       

Как писать код? Технологии древних цивилизаций, или все новое - это хорошо забытое старое 71

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

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

23.01.2019    9238    starik-2005    43       

1C:Предприятие для программистов: Запросы и отчеты. Второй поток. Онлайн-интенсив с 17 марта по 16 апреля 2020 г. Промо

Данный онлайн-курс предусматривает углубленное изучение языка запросов и возможностей системы компоновки данных, которые понадобятся при разработке отчетов, работающих на платформе “1С:Предприятие” в рамках различных прикладных решений. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей различных прикладных решений, которые используют в своей работе отчеты разного назначения.

6500 рублей

Перенос данных УТ 10.3 => УТ 11 / КА 2 / ERP 2 (ЕРП 2) (документы, остатки и справочная информация из "1С:Управление торговлей, ред. 10.3" в УТ 11 / КА 2 / ERP 2). Обновлен до УТ 10.3.56.х, УТ 11.4.10.х, КА 2.4.10.х и ERP 2.4.10.х! Промо

Уже более 100 компаний приобрели перенос и выполнили переход на УТ 11 / КА 2 / ERP 2 с помощью нашей разработки! Обработка перехода с УТ 10.3 на УТ 11 / КА 2 / ERP 2 позволяет перенести не только остатки на указанную дату (как типовой перенос), но и все возможные документы за выбранный период. При выходе новых релизов этих программ оперативно выпускаем обновление обработки. Предоставляем техническую поддержку. Можем сделать бесплатный тестовый перенос!

29700 руб.

Многоязычное программирование: создание систем с использованием нескольких языков 17

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

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

09.01.2019    6578    kalyaka    33       

Размышления о хороших практиках, навеянные одной статьей 12

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

Прочитал статью "Ректальное программирование: основы для практикующих 1С-программистов". Статья очень хорошая и своевременная. Но у меня возникло некоторое сомнение. А достаточно ли автор любит и понимает предмет, о котором пишет? Насколько богат его опыт ректального программирования и занимался ли он им вообще? Как человек обладающий многолетним опытом РП, я решил представить вам необходимые дополнения к статье.

21.12.2018    4968    mkalimulin    61       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Ректальное программирование: основы для практикующих 1С-программистов 303

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

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

19.12.2018    34204    for_sale    342