• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Периодический реквизит справочника

  • Автор темы AlexeyMir
  • Дата начала
A

AlexeyMir

Подскажите пожалуйста, есть спровочник ТМЦ, у каждого ТМЦ есть розничная цена(периодический реквизит), сегодня ее изменили, как мне узнать все ТМЦ у которых сегодня поменялась розничная цена?
 
V

vitfil

Получить цену на сегодняшнюю дату и на вчерашнюю и сравнить.
 
P

Pro

если номенклатура большая, imho будет долго работать...
а если за день поменяли несколько раз?
 
V

vitfil

Для: Pro
Если за день меняли несколько раз (т.е. документами, насколько я понимаю) или номенклатура большая, то для ускорения можно использовать прямой запрос к базе.
В любом случае, для получения для всей номенклатуры цен кроме прямого перебора придумать что-то более быстрое сложно.
 
A

AlexeyMir

Номенклатуры действительно много(~12тыс). Подскажите как примерно вытянуть данные из справочника ТМЦ по цене за определенную дату? у меня SQL-база.
 
V

vitfil

12 тыс - это не много.
Как вытянуть?
1. Прямой перебор.
2. Сформировать запрос по справочнику, с использованием языка запросов 1С.
3. Сформировать запрос к базе данных с использованием прямого доступа к данным (например, через 1С++ или же через ADO).
Выбирайте, что вам ближе и доступней.
Если это разовая необходимость, ИМХО прямым перебором.
 
P

Pro

Для: vitfil
в свое время использовал перебор через Периодичее реквизиты работало быстрее, но это на файловой 1С, на SQL конечно будет быстрее прямой доступ
 
A

AlexeyMir

Подскажите, я так понял мне нужно в одном запросе сравнить по каждой номенклатуре периодический реквизит (розничная цена)за две даты вчерашнюю и сегодняшнюю, чтобы выяснить ТМЦ с сегодня измененной ценой
Я попробовал след запрос:

Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Номенклатура = Справочник.ТМЦ.ТекущийЭлемент;
|Цена_Розн = Справочник.ТМЦ.Цена_Розн;
|Группировка Номенклатура все;
|"//}}ЗАПРОС


Как мне реализовать примено такое:
|Цена_Розн = Справочник.ТМЦ.Цена_Розн.Получить(ТекщаяДата())
|Цена_Розн_Стар = Справочник.ТМЦ.Цена_Розн.Получить(ТекщаяДата()-1)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!