СКД: Корректный расчет остатков по нескольким регистрам

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

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

СКД Правильный расчет итогов Итоги Остатки Неправильный остаток

91
Решение проблемы некорректного расчета остатков при получении данных с помощью СКД из нескольких таблиц

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

Постановка задачи

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

Как решалась задача

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

В схеме компоновки данных, я добавил единственный Набор данных - запрос с текстом, который описывает Объединение двух запросов:

1. РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты

2. РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.ОстаткиИОбороты

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

Плюс добавил в каждый запрос поле "Раздел" (я всегда так делаю, чтобы при отладке понять из какого запроса выбираются те или иные данные) - значение этого поля текст: для первого - "1. Товары на складах", для запроса к партиям - "2. Партии товаров на складах" соответственно.

 
 Набор данных - Запрос:

При чем, конструктор СКД определил роли полей(что измерения, а что поля начальных, конечных остатков)

Настроил ресурсы для всех полей. Здесь ничего необычного

Настройки компоновки сделал простыми вложенными группировками по разрезам учета Склад, Номенклатура, Характеристика, Серия. И выбрал все поля ресурсов, кроме начальных остатков.

Смотрю, что получается - вроде, правильно:

Но если добавить группировку по регистратору или детальные записи, то итоги по номенклатуре становятся неправильными:

В чем проблема? Дело в том, что в СКД свой собственный механизм расчета начальных и конечных остатков(информация из видео-курса по СКД Гилева)

Алгоритм расчета итогов по полям остатка описан на ИТС https://its.1c.ru/db/v8310doc#bookmark:dev:TI000000628 (Спасибо Armando)

Упрощенно алгоритм для получения Конечных остатков таков: берем последнюю по хронологии запись в разрезе выбранных измерений и считаем, что значение поля Конечный остаток из нее и есть конечный остаток для группировки. И судя по скриншоту, получается, что последняя запись имеет конечный остаток по Товарам на складах = 0, Партии = 0 - СКД считает, что для Номенклатуры это и есть конечный остаток.

Чтобы это победить, для поля Раздел я добавил роль Измерение, и поскольку, данное поле не планируется выбирать в отчете, а СКД его будет оптимизировать и удалять из запроса - флаг Обязательное. Теперь итоги верные.

Верные итоги

Немного красоты

Для того чтобы исключить пустые строки, сообщающие о начальном и конечном остатке на Начало/Конец периода, поле Регистратор можно в запросе заменить на выражение и поставить для этого поля галку Игнорировать значения NULL.

ВЫБОР
    КОГДА Регистратор = НЕОПРЕДЕЛЕНО
        ТОГДА NULL
    ИНАЧЕ Регистратор
КОНЕЦ

В конце я еще дополнил текст запроса описанием характеристик

 
 Характеристики беру из заранее заготовленного шаблона

Выводы

Когда в одном отчете на СКД необходимо корректно показать начальные, конечные остатки нескольких разделов учета следует выполнить следующее:

  1. В наборе данных запрос используем таблицу ОстаткиИОбороты 
  2. В запросе для каждого раздела учета создаем поле "Раздел". Для каждого запроса объединения, пишем туда уникальное значение. Я так и пишу текстом, например "1. Товары на складах", "2. Партии товаров на складах"
  3. В запросе выбираем все нужные поля, в т.ч. поле "Раздел
  4. В СКД настраиваем роли для полей остатков(это СКД сделает сама) 
  5. Очень важный момент! В СКД для поля "Раздел" ставим роль "Измерение" и галку "Обязательное

В этом случае, при расчете итогов СКД всегда будет считать, что начальный и конечный остаток различных разделов учета у вас лежат в разных плоскостях(измерениях) и будет рассчитывать его корректно

91

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

Комментарии
Избранное Подписка Сортировка: Древо
1. Сурикат 264 18.11.17 11:55 Сейчас в теме
Как альтернатива предлагаемого решения - наборы данных
3. echo77 1094 19.11.17 12:39 Сейчас в теме
(1) Я тоже в один момент подумал, что объединив два набора данных можно получить правильные итоги сразу, но, поскольку, роли полей настраиваются уже для Объединения, а не для отдельных наборов данных в него входящих - получим тоже самое
Прикрепленные файлы:
4. Сурикат 264 19.11.17 12:55 Сейчас в теме
(3)
я Объединения, а не для отдельных наборов данных в него входящих - получим тоже самое


Просто такую же проблему у меня получилось решить именно объединением наборов... Причем в наборах поля ресурсов не пересекались.
Но может ситуация была немного другая =)
2. Armando 1391 18.11.17 22:47 Сейчас в теме
На ИТС описан алгорит получения остатка. В виде кода, т.к. ИС съедает отступы

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

10.8.1. Расчет итогов по полям остатка
Если в макете компоновки данных в некотором наборе данных присутствует поле начального остатка, то в наборе данных также должно присутствовать соответствующее ему поле конечного остатка, и наоборот.

Все поля-периоды, описанные в наборе данных, должны иметь непрерывную нумерацию, начинающуюся с единицы.

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

При расчете итогов по полям-остаткам используется следующий алгоритм:

    ● если требуется осуществить расчет итога поля остатка для группировки по полю-периоду:

        ● если по всем полям-периодам уже была осуществлена группировка:

            ● для каждой комбинации полей измерений, по которым осуществлялась группировка:

                ● получается запись, ближайшая к текущему периоду;

                ● если полученная запись была на текущий период, то из данной записи будут получаться начальные и конечные остатки;

                ● иначе, если полученная запись имеет предыдущий период, конечный остаток записи будет использован как начальный и конечный остаток;

                ● иначе начальный остаток полученной записи будет использоваться как начальный и конечный остаток;

    ● иначе (группировка еще не произведена по всем полям-периодам):

        ● для каждой комбинации полей измерений, по которым осуществлялась группировка:

            ● получаются первая и последние записи, у которых поля использованных периодов равны текущему периоду;

            ● если записи найдены, то первая запись будет использоваться как начальный остаток, последняя – как конечный;

            ● если записи не найдены, то получается ближайшая запись и ее остатки используются как начальные остатки и конченые остатки в зависимости от того, предшествует ли найденная запись текущему периоду;

    ● иначе (не группировка по полю-периоду):

        ● первые по хронологии записи для неиспользованных полей-измерений будут использоваться в качестве записей начального остатка, последние – в качестве конечного.
Показать


https://its.1c.ru/db/v8310doc#bookmark:dev:TI000000628
begemot; d4rkmesa; AlexKo; Сурикат; echo77; +5 Ответить
5. logarifm 1048 22.11.17 00:25 Сейчас в теме
Во-первых чтобы СКД корректно рассчитывала остаток надо обязательно в ресурсах указывать поля Нач.Кон остатки
6. logarifm 1048 22.11.17 00:26 Сейчас в теме
Прекрасно делается через Набор данных Объединение только там есть интересный момент следует учесть Значения разных ресурсов регистров под разныими именами!
7. logarifm 1048 22.11.17 00:53 Сейчас в теме
А вот это диво-дивное и чудо чудное решается как с помощью Набора данных Объединение так и с помощью просто Объеденить в запросе. Но с одной особенностью, что роли необходимо самому указать и проверить для Измерений чтобы были измерениями, а для остатков остатками. Но можно упороться на одну интересную ошибку особенно если использовали к примеру одно поле КонОст и остатка и партии во тут получим ошибку.

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

Оговорюсь только , что это делалось для конфигурашки на обычных формах 10..х под CRM.
Прикрепленные файлы:
ПартииТоваровНаСкладахСУчетомРезерва.erf
Team leader; +1 Ответить
8. echo77 1094 23.11.17 18:55 Сейчас в теме
(7) Все хорошо, пока не добавить группировку по регистратору.
При добавлении группировки - остаток по партиям для Номенклатуры и для Склада - 0
Эти грабли я и описал в статье, и как их поборол

p.s. В отчете, что вы скинули, нет никакого смысла делать объединение наборов, т.к. вы ничего не объединяете. И не совсем понятно, почему так сложно рассчитываются ресурсы
Прикрепленные файлы:
24. Team leader 9 02.01.19 17:37 Сейчас в теме
9. alexz69 06.12.17 09:01 Сейчас в теме
Спасибо большое, за вашу статью. Такая же проблема была, только я использовал три регистра в самописной конфигурации. Пришел к выводу, что при добавлении третьего регистра плывет остаток по конечному остатку по измерениям. Хотя по регистратору всё нормально. Проверял все роли, делал и в одном запросе и в объединении - ничего не помогало. Благодаря добавлению раздела всё стало на свои места. Нутром чувствовал, что СКД путает. Очень выручили )).
10. mitia.mackarevich 27 01.03.18 10:17 Сейчас в теме
Для остатков по регистратору вы использовали вспомогательное поле период секунда?
11. echo77 1094 01.03.18 10:42 Сейчас в теме
(10) Да, псевдоним у поля - Период
12. mitia.mackarevich 27 01.03.18 10:58 Сейчас в теме
(11)Тогда проблем с остатками по регистратору быть не должно, а если вы искусственно добавляете разрез (новое измерение) в набор, то это вроде как правило, именно правило а не фича какая то, что его нужно отметить измерением. Разработка сложных отчетов книга есть у Хрусталевой. Во второй редакции это должно быть описано.
13. rozer 259 01.03.18 12:23 Сейчас в теме
(12) да на итс уже как 100 лет есть это https://its.1c.ru/db/metod8dev/content/3093/hdoc - если регистратор то надо секунду добавлять и роли полей поставить правильно
14. echo77 1094 01.03.18 14:26 Сейчас в теме
(12)
если вы искусственно добавляете разрез (новое измерение) в набор, то это вроде как правило, именно правило а не фича какая то, что его нужно отметить измерением

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

Ничего сверхестественного, просто тонкость, которую нужно понимать
Shrayky2; mitia.mackarevich; +2 Ответить
15. alanchik 21.05.18 14:47 Сейчас в теме
Спасибо автору!!! Столкнулся я с проблемой этих остатков, когда объединял два регистра накопления, день бился не добился результата, пока не наткнулся на эту статью. Интуитивно было понятно, что надо что-то делать с разделами учета, потому что по-отдельности запросы считали корректно, а при объединении нет, но как сочинить сие действо мозгов не хватило)))
16. Noveng 16.10.18 12:02 Сейчас в теме
У меня несколько иная задача(. есть начальный остаток по регистру товары на складах и приход по нему материала. Но расход высчитывается как нормативный. Берется перемещаема продукция. по ней ищется спецификация, выбирается материал и рассчитывается нормативный расход. Общего из двух запросов получается только склад и номенклатура. А вот конечный остаток вычисляется как начальный остаток +приход-нормативный расход. Не получается подружить конечный остаток ни с одним периодом из регистра. Группировка склад и номенклатура - всё нормально, но как только добавляешь регистратор, день...остатки разлетаются. Искусственное измерение типа - раздела учета не помогает....
17. echo77 1094 16.10.18 19:16 Сейчас в теме
(16) И не поможет. Вам в итоге нужно получить выборку вида:
Регистратор НачальныйОстаток, Приход, Расход, КонечныйОстаток

В одной строке выборки должен присутствовать начальный и конечный остаток.
18. rom-x 152 28.11.18 14:31 Сейчас в теме
Почему-то если добавляю поле Раздел, в поля группировки к Регистратору, выходит ошибка: Совместная группировка по периодам с другими выражениями запрещена, убираю Роль период у регистратора и периода - конечный остаток не правильный. Если не добавлять раздел в поля группировки и оставить Роль период как есть, все работает.
19. echo77 1094 28.11.18 15:07 Сейчас в теме
(18) И не нужно группировать регистратор с каким-то еще полем - посмотрите скриншот с настройкой структуры.
20. rom-x 152 28.11.18 15:56 Сейчас в теме
(19) Я хотел сделать также, как на картинке перед заголовком Немного красоты.
21. rom-x 152 28.11.18 18:46 Сейчас в теме
22. echo77 1094 29.11.18 07:43 Сейчас в теме
(21) Это не группировка Регистратор, Раздел. Это детальные записи, в которых выведены эти два поля.
25. German_Tagil 7 07.01.19 00:29 Сейчас в теме
Запомнить - с чем то подобным сталкивался по поводу детальных записей
в консоли все нормально работало-
решил перенести в отчет
часа два ковырялся пока добился нужного результата
теперь немного понятно
Оставьте свое сообщение

См. также

Немного про СКД. Характеристики и проверка пустого отчета 70

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

Пример использования характеристик в СКД и программная работа с ними. А также описание проверки результата отчета на заполненность.

10.10.2019    2509    YPermitin    7       

Полезняшки по СКД и построителям. Просто код 40

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

Полезные процедуры и функции для работы с построителями и СКД. Просто исходник.

10.10.2019    2672    Yashazz    43       

Две схемы СКД в одном отчете с пользовательскими параметрами 15

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

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

10.10.2019    1465    evgeni-red    6       

Три способа создания одного отчета на СКД 77

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

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

08.10.2019    3788    ids79    23       

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

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

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

25.09.2019    4685    YPermitin    24       

СКД не только для отчетов 139

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

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

18.09.2019    7023    YPermitin    31       

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

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

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

05.09.2019    10282    ids79    42       

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

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

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

08.08.2019    10686    ids79    24       

СКД - наборы данных и связи между ними, создание собственной иерархии, вложенные отчеты 126

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

Набор данных объект. Использование в схеме компоновки нескольких наборов данных. Различные варианты связи наборов: объединение, соединение. Использование иерархии в отчетах на СКД. Создание собственной иерархии, иерархия детальных записей. Использование вложенных схем в отчетах на СКД.

26.07.2019    9579    ids79    6       

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

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

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

17.07.2019    8878    ids79    24       

Пользовательские настройки системы компоновки данных 87

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

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

09.07.2019    6433    ids79    0       

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

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

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

04.07.2019    6282    SeiOkami    48       

Работа с настройками системы компоновки данных 98

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

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

02.07.2019    9715    ids79    8       

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

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

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

25.06.2019    17669    ids79    17       

Не провоцируйте СКД, или пример "как не надо" 50

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

Пример того, что не нужно использовать в запросах, чтобы не провоцировать СКД.

10.06.2019    7320    SeiOkami    90       

Еще один способ нестандартной расшифровки отчета. Без использования обработчиков формы. Для ленивых 90

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

Лень+ СКД. Еще один нестандартный способ расшифровки отчета. Без использования обработчиков формы. Только макет компоновки и модуль отчета. Весь исходный текст в статье.

16.05.2019    5652    tusv    55       

Расшифровка отчета на СКД с детализацией по выбранному полю на основе БСП 91

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

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

14.05.2019    7465    Viktor_Ermakov    6       

Разворачивание таблицы свойств и значений по колонкам через СКД 18

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

СКД! Юниоры 1С начинают паниковать, когда слышат эту аббревиатуру. Хороший пример, упрощающий жизнь начинающему разработчику, представлен ниже.

12.05.2019    3598    Eret1k    0       

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

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

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

25.04.2019    4885    m-rv    2       

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

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

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

16.04.2019    7429    m-rv    16       

"Склеивание" отчетов на СКД 23

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

Методика программного объединения данных нескольких отчетов в итоговый сводный. По ссылке опубликован пример на реальных данных и код отчета: https://infostart.ru/public/1017891/

10.03.2019    4568    bivmail    2       

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

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

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

07.03.2019    23435    ids79    32       

Программная обработка данных отчета, полученных с помощью запроса, с выводом измененных данных в СКД 29

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

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

17.02.2019    4160    srub    10       

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

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

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

15.02.2019    17129    ids79    34       

Вывод результата компоновки в таблицу и дерево значений 29

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

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

14.02.2019    4040    kasper076    5       

Ещё раз о суммировании группировок в СКД 60

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

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

11.02.2019    6723    Dioneo    17       

Еще раз о расшифровке для СКД 22

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

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

27.12.2018    5009    scientes    2       

Заголовок с параметром в отчете СКД 30

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

Статья, как сделать заголовок с параметром в отчете СКД.

19.12.2018    5464    user913680    16       

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

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

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

14.12.2018    21573    ids79    72       

Установка собственных значений полей при программном выводе отчета СКД по имени поля (по принципу "как в макете") 16

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

При программном выводе отчета на СКД возникает задача заполнить поля своими значениями. Но при поэлементном выводе отчета параметры "обезличены" как П1, П2, П3, ... Как узнать в какое "П" содержит нужное поле и куда устанавливать значение? Статья поможет программистам начинающим освоение СКД и перешедшим на СКД с "макета" ответить на эти вопросы на примере готового решения.

23.11.2018    4995    lmnlmn    0       

Дополнительные реквизиты в типовом отчете и их отсутствие 18

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

Пара Лайфхаков, случайно найденных, когда было лень запускать конфигуратор. Отбор при отсутствии дополнительного реквизита.

18.11.2018    4767    dyuha    0       

Программное заполнение пользовательских параметров и отборов СКД 135

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

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

13.11.2018    19850    Unk92    18       

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

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

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

10.11.2018    20941    ids79    40       

Перевод конфигурации на 8.3.13 17

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

Опыт решения проблем. 1. Проблема с СКД преобразованием запроса при отключении режима совместимости:

06.11.2018    5540    serferian    26       

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

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

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

15.10.2018    20551    tormozit    100       

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

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

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

03.09.2018    31144    SergeyN    26       

Как легко в СКД сделать переключатель: рубли, тыс. руб., млн. руб. 72

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

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

07.08.2018    8362    SayDimas    15       

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

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

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

25.06.2018    19367    olegtymko    47       

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

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

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

01.06.2018    21252    m-rv    21       

О важности псевдонимов полей во временных таблицах и отборах на СКД для производительности 26

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

Рассмотрена важность правильного указания псевдонимов полей временных таблиц запроса СКД, на которые могут накладываться отборы

29.05.2018    5844    tata_1211    17       

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

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

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

23.05.2018    17036    slozhenikin_com    19