Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 апр 2024, 10:28

Вопрос по ТиС 9.2 (1C 7.7)

Автор ИльяL, 11 окт 2010, 16:49

0 Пользователей и 1 гость просматривают эту тему.

ИльяL

здравствуйте!

у меня вопрос по ТиС. я делаю выборку данных справочника номенклатуры так
спр=СоздатьОбъект("Справочник.Номенклатура");     
      спр.ВыбратьЭлементы();   
но мне нужно также получить остатки номенклатуры на складах(или складе). как правильно сформулировать запрос чтобы получить номенклатуру и остаток на складе?

Таблица Брадиса

Чем отчёт остатки товаров не нравится?

progmikon

Цитата: ИльяL от 11 окт 2010, 16:49
здравствуйте!

у меня вопрос по ТиС. я делаю выборку данных справочника номенклатуры так
спр=СоздатьОбъект("Справочник.Номенклатура");     
      спр.ВыбратьЭлементы();   
но мне нужно также получить остатки номенклатуры на складах(или складе). как правильно сформулировать запрос чтобы получить номенклатуру и остаток на складе?

Так вы получаете выборку всех элементов номенклатуры.
Данные по остаткам хранятся в регистрах.

ИльяL

я в 1С новичек. скажите пожалуйста, как мне получить данные из регистров?

mara

Цитата: ИльяL от 12 окт 2010, 22:15
я в 1С новичек. скажите пожалуйста, как мне получить данные из регистров?

Обращение к итогам регистра

1-й способ.
РегТовары = СоздатьОбъект("Регистр.Товары");
РегТовары.ВыбратьИтоги();
Пока РегТовары.ПолучитьИтог()=1 Цикл
......Сообщить("Товар " + Строка(РегТовары.Товар) +
...................... " на складе " + Строка(РегТовары.Склад) +
...................... " кол-во: " + Строка(РегТовары.Количество) +
...................... " стоимость: " + Строка(РегТовары.Стоимость) +
КонецЦикла;

2-й способ. Выгрузка итогов в таблицу значений

РегДоходы = СоздатьОбъект("Регистр.Доходы");
ТабЗнач = СоздатьОбъект("ТаблицаЗначений");

РегДоходы.ВыгрузитьИтоги(ТабЗнач);

ТабЗнач.ВыбратьСтроки();
Пока ТабЗнач.ПолучитьСтроку()=1 Цикл
......Сообщить("Товар " + Строка(ТабЗнач.Товар) +
...................... " на складе " + Строка(ТабЗнач.Склад) +
...................... " кол-во: " + Строка(ТабЗнач.Количество) +
...................... " стоимость: " + Строка(ТабЗнач.Стоимость) +
КонецЦикла;




Обращение к итогам оборотного регистра

РегДоходы = СоздатьОбъект("Регистр.Доходы");
//установить период выборки "30 ноября 2001 года"
РегДоходы.ИспользоватьПериод(2001,11,30);

1. Метод Итог
Синтаксис: Итог(<Измерен1>,<Измерен2>...,<ИмяРесурса>)
Пример:
//получить доход за день по данному клиенту и данному товару
Доход = РегДоходы.Итог(ТекКлиент, ТекТовар, "Доход");


2. Метод Итоги
Пример:
//получить доход за день по данному клиенту и данному товару
РегДоходы.Итоги(ТекКлиент, ТекТовар);
Доход = РегДоходы.Доход;



3. Метод СводныйИтог
Синтаксис: СводныйИтог(<Измерен1>,<Измерен2>...,<ИмяРесурса>)
Могут быть указаны не все измерения. Фиксируются только указанные измерения.

Пример:
//получить сводные итоги за день
ДоходПоКлиенту = РегДоходы.СводныйИтог(ТекКлиент,,"Доход");
ДоходПоТовару = РегДоходы.СводныйИтог(,ТекТовар,"Доход");


4. Метод СводныеИтоги
Синтаксис: СводныеИтоги(<Измерение1>,<Измерение2>...)
Могут быть указаны не все измерения. Фиксируются только указанные измерения.

Пример:
//получить сводные итоги за день по клиенту
РегДоходы.СводныеИтоги(ТекКлиент,); //указано только одно измерение
ДоходПоКлиенту = РегДоходы.Доход;

//получить сводные итоги за день по товару
РегДоходы.СводныеИтоги(,ТекТовар); //указано только одно измерение
ДоходПоТовару = РегДоходы.Доход;



Обращение к итогам регистра остатков

РегТовары = СоздатьОбъект("Регистр.Товары");

1. Метод Остаток
Синтаксис: Остаток(<Измерен1>,<Измерен2>...,<ИмяРесурса>

Пример:
//получить остаток данного товара на данном складе
Колво = РегТовары.Остаток (ТекТовар, ТекСклад, "Количество");

//получить стоимость данного товара на данном складе
Стоимость = РегТовары.Остаток (ТекТовар, ТекСклад, "Стоимость");

2. Метод Остатки
Синтаксис: Остатки(<Измерение1>,<Измерение2>...)

Пример:
//получить остаток данного товара на данном складе по кол-ву и по сумме
РегТовары.Остатки (ТекТовар, ТекСклад);
Колво = РегТовары.Количество;
Стоимость = РегТовары.Стоимость;

3. Метод СводныйОстаток
Синтаксис: СводныйОстаток(<Измерен1>,<Измерен2>...,<ИмяРесурса>)
Могут быть указаны не все измерения. Фиксируются только указанные измерения.

Пример:
//получить остаток данного товара на всех складах
КолвоТовара = РегТовары.СводныйОстаток (ТекТовар,,"Количество");
СтоимостьТовара = РегТовары.СводныйОстаток (ТекТовар,,"Стоимость");

//получить стоимость всех товаров на данном складе
СтоимостьПоСкладу = РегТовары.СводныйОстаток (,ТекСклад,"Стоимость");

4. Метод СводныеОстатки
Пример:
//получить сводные остатки по товару
РегТовары.СводныеОстатки(ТекТовар,); //указано только одно измерение
КолвоТовара = РегТовары.Количество;
СтоимостьТовара = РегТовары.Стоимость;

//получить стоимость всех товаров на данном складе
РегТовары.СводныеИтоги(,ТекСклад); //указано только одно измерение
СтоимостьПоСкладу = РегТовары.Стоимость;



Обращение к движениям регистра

РегТовары = СоздатьОбъект("Регистр.Товары");

РегТовары.ВыбратьДвижения(ДатаНач, ДатаКон);
Пока РегТовары.ПолучитьДвижение()=1 Цикл
........Сообщить("Дата движения " + Строка(РегТовары.ТекущийДокумент.ДатаДок));
........Сообщить("Клиент: " + РегТовары.Клиент);
........Сообщить("Товар: " + РегТовары.Товар);
........Сообщить("Сумма: " + РегТовары.Доход);
КонецЦикла;


Теги:

Похожие темы (4)

Рейтинг@Mail.ru

Поиск