18.10.2022 Дмитрий Гречушкин 44213
Использование менеджера временных таблиц в за...

Содержание:

1.       Что такое менеджер временных таблиц?

2.       Задача с штрихкодом номенклатуры  

   

1.      Что такое менеджер временных таблиц?


Давайте для начала разберемся, что такое менеджер временных таблиц (МВТ) и зачем он нужен. Что такое МВТ - этот объект позволяет передавать временные таблицы из запроса в запрос. То есть, мы можем создать временную таблицу в запросе, прерваться, выполнить какой-нибудь код, и продолжить работу с этой временной таблицей дальше. Менеджер временных таблиц нужен, если результат запроса нужно на какой-то небольшой промежуток времени сохранять и потом к этому результату делать ещё запросы.


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


2.      Задача с штрихкодом номенклатуры


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


Решение задачи:

·         Шаг первый – создадим менеджер временных таблиц и поместим в него выборку штрихкодов номенклатуры

// Создадим объект МВТ

МенеджерВТ = Новый МенеджерВременныхТаблиц;

// Создадим объект типа запрос

Запрос = Новый Запрос;

// Инициализируем МВТ запроса объектом МВТ

Запрос.МенеджерВременныхТаблиц = МенеджерВТ;

Запрос.Текст =

    "ВЫБРАТЬ

    |     Штрихкоды.Владелец КАК Номенклатура,

    |     Штрихкоды.Штрихкод

    |ПОМЕСТИТЬ ВТ_Штрихкоды

    |ИЗ

    |     РегистрСведений.Штрихкоды КАК Штрихкоды

    |

    |ИНДЕКСИРОВАТЬ ПО

    |     Номенклатура";

// Сформируем инициализируем объект МВТ

Запрос.Выполнить();

 

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

 

·         Шаг второй – сформируем итоговый запрос с использованием менеджера временных таблиц в 1С 8.3.

 

// Создадим объект типа запрос

ЗапросИтог = Новый Запрос;

// Инициализируем МВТ запроса объектом МВТ

ЗапросИтог .МенеджерВременныхТаблиц = МенеджерВТ;

Запрос.Текст =

    "ВЫБРАТЬ

|        Товары.Наименование КАК Наименование,

|        ВТ_Штрихкоды.Штрихкод

|ИЗ

|        Справочник.Номенклатура КАК Товары

|                ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Штрихкоды КАК ВТ_Штрихкоды

|                ПО (ВТ_Штрихкоды.Номенклатура = Товары.Ссылка)

|

|ГДЕ

|     НЕ Товары.Услуга

|

|УПОРЯДОЧИТЬ ПО

|        Наименование ИЕРАРХИЯ";

 

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

 

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

 

Результатом второго шага будет объединение данных временной таблицы «ВТ_Штрихкоды» МВТ «МенеджерВТ» и данных выборки из справочника «Номенклатура» с соблюдением иерархии справочника. Результат выполнения представлен на рисунке 1.

 


Рисунок 1. Результат итогового запроса

    

Необходимо учитывать, что когда вы создали временные таблицы, они будут существовать в памяти компьютера до закрытия менеджера временных таблиц (автоматически или принудительно методом Закрыть()) или до срока исполнения запроса, связанного с этим менеджером, уничтожающего временную таблицу с помощью конструкции УНИЧТОЖИТЬ.


Заключение – использование МВТ дает мощный функционал для выполнения запроса на выборку данных в 1С.

Спасибо за внимание уважаемые коллеги.


Специалист компании «Кодерлайн»

Дмитрий Гречушкин

Наши проекты

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Управление холдингом 8

Бухгалтерский учет;
Расчет зарплаты и кадровый учет;...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Много Плитки»
ООО «Много Плитки»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Закупки (снабжение) и управление отношениями с поставщиками:
- Оформление ...

ОАО «Фаберлик»
ОАО «Фаберлик»

Отрасль:

Внедренное типовое решение:
1С:ERP. Управление производственным предприятием 2

- Регламентированный учет;
- Кадровый учет;...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

Бухгалтерский учет Банк и касса Расчеты с контрагентами Торговые операции ...

ООО "Смена"
ООО "Смена"

Отрасль:
Торговля, склад, логистика, транспорт

Внедренное типовое решение:
1С:Комплексная автоматизация

Банк и касса
Расчеты с контрагентами
Торговые операции
Взаиморасчеты с...

ООО "СЖД"
ООО "СЖД"

Отрасль:
Торговля, склад, логистика, транспорт

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Расчет зарплаты
Подбор кадров
Кадровый учет
Анализ кадрового состава...

АО «Вертолетная сервисная компания»
АО «Вертолетная сервисная компания»

Отрасль:
МТО эксплуатации вертолетной техники

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Консультации по сложным вопросам налогового и бухгалтерского учета;
- Ра...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
«1С: Управление торговлей»

- Создание прототипа SRM-системы на базе «1С: Управление торговлей»
- Автомат...

Установка программного продукта БИТ.Финанс для 1С:Бухгалтерия 8
ООО «Джи Эй Си Шиппинг энд Лоджистикс»

Отрасль:
Транспорт

Внедренное типовое решение:
БИТ.Финанс

Построение единого информационного пространства финансовой службы;
Учет ...

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в ООО «Шокостайл»
ООО «Шокостайл»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Планирование п...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Управление цепочками поставок Оптовая торговля ...

ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"
ООО "АСТАРМЕДИКА КЛИНИКА МИКРОХИРУРГИИ ГЛАЗА"

Отрасль:
Деятельность больничных организаций

Внедренное типовое решение:
БИТ:Управление медицинским центром 8

- Управление отношениями с клиентами (CRM)
- Делопроизводство
- Ведение но...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение