Работа с регистрами
Регистры - это таблицы для накопления оперативных данных и получения сводной информации. Данные в регистры добавляются только при проведении документов. Сведения из регистров используются для формирования отчетов.
Регистры, используемые в примерах:
| Оборотный регистр Доходы Измерения: Клиент, ТоварРесурсы: ДоходРеквизиты:нетПериодичность: День
| Регистр остатков Товары Измерения: Товар, СкладРесурсы: Количество, СтоимостьРеквизиты:нет
| Хранит доходы от продаж за день в разрезе клиентов и товаров.
| Хранит остатки товаров на каждом складе в количественном и суммовом выражении.
|
Запись движений в оборотный регистр (только при проведении документа)
1. Метод ДвижениеПриход Синтаксис: ДвижениеПриход(<Измерение1>,<Измерение2>...,<Ресурс1>,<Ресурc2>...) Пример: Регистр.Доходы.ДвижениеПриход(Покупатель,КупленныйТовар,СуммаПокупки)
2. Метод ДвижениеПриходВыполнитьПример: Регистр.Доходы.Клиент = Покупатель; Регистр.Доходы.Товар = КупленныйТовар; Регистр.Доходы.Доход = СуммаПокупки; Регистр.Доходы.ДвижениеПриходВыполнить();
|
Запись движений в регистр остатков (только при проведении документа)
1. Метод Движение Синтаксис: Движение(<Измерение1>,<Измерение2>...,<Ресурс1>,<Ресурc2>...) Пример: Регистр.Товары.Движение (ПоступившийТовар, ТекСклад, КолвоПоНакладной, СуммаПоНакладной) 2. Метод ДвижениеВыполнить Пример: Регистр.Товары.Товар = ПоступившийТовар; Регистр.Товары.Склад = ТекСклад; Регистр.Товары.Количество = КолвоПоНакладной; Регистр.Товары.Стоимость = СуммаПоНакладной; Регистр.Товары.ДвижениеВыполнить(); Примечание: Если сумма или количество в движении будет отрицательным, то это движение будет расходом, иначе приходом.
|
Обращение к итогам регистра
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 Цикл........Сообщить("Дата движения " + Строка(РегТовары.ТекущийДокумент.ДатаДок));........Сообщить("Клиент: " + РегТовары.Клиент);........Сообщить("Товар: " + РегТовары.Товар);........Сообщить("Сумма: " + РегТовары.Доход); КонецЦикла;
|
Фильтрация движений и итогов
РегТовары = СоздатьОбъект("Регистр.Товары");
1. Метод УстановитьФильтр Синтаксис: УстановитьФильтр(<Измерение1>,<Измерение2>...,<Рекв1>,<Рекв2>) Пример: //выбрать все движения по данному складу за период РегТовары.УстановитьФильтр(,ТекСклад); РегТовары.ВыбратьДвижения(ДатаНач, ДатаКон); Пока РегТовары.ПолучитьДвижение()=1 Цикл... КонецЦикла; //выбрать все товары на данном складе РегТовары.УстановитьФильтр(,ТекСклад); РегТовары.ВыбратьИтоги(); Пока РегТовары.ПолучитьИтог()=1 Цикл... КонецЦикла; 2. Метод УстановитьЗначениеФильтраСинтаксис: УстановитьЗначениеФильтра(<Идентиф>,<Значен>,<Вариант>) Пример: //выбрать все движения по данному складу за период РегТовары.УстановитьЗначениеФильтра("Склад", ТекСклад); //далее идет выборка движений или итогов...
3. Метод ВыбратьДвиженияДокумента (<Документ>) 4. Метод ВыбратьДвиженияСОстатками(<ДатаКонца>,<ГрафаОтбора>) Применяется только для регистра остатков.
|
Временный расчет регистров
Временный расчет регистров требуется, если нужно выбрать итоги или движения на определенную дату. По умолчанию итоги регистров выдаются на Точку актуальности. РегТовары = СоздатьОбъект("Регистр.Товары"); РегДоходы = СоздатьОбъект("Регистр.Доходы");
//установка флага временного расчета для регистров РегТовары.ВременныйРасчет(1); РегДоходы.ВременныйРасчет(1);
1. Метод РассчитатьРегистрыНа(<ГраницаРасчета>,<ГрафаОтбора>) Рассчитать все регистры с установленным флагом временного расчета на начало события. (на начало даты или на момент до проведения документа) 2. Метод РассчитатьРегистрыПо (<ГраницаРасчета>,<ГрафаОтбора>) Рассчитать все регистры с установленным флагом временного расчета на конец события. (на конец даты или на момент после проведения документа)
|
Запрос к регистру В запросах к регистрам применяются функции НачОст, КонОст, Приход, Расход. В запросах к оборотным регистрам обязательно указывается Период.
ТекстЗапроса = " |Период С ДатаНач По ДатаКон; |Товар = Регистр.Доходы.Товар; |Клиент = Регистр.Доходы.Клиент; |Доход = Регистр.Доходы.Доход; |Условие (Товар = ТекТовар); |Группировка Клиент; |Функция ПриходПоКлиенту = Приход(Доход); |";
|
Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...
|
Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...
|
Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...
|
Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...
|
|
Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...
ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, новогаленовые препараты, жидкие органопрепараты и жидкие экстракты, а также порошки и таблетки для имплантации...
Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...
|
|
Гальванического элемента При контакте двух любых фаз на границе их раздела возникает двойной электрический слой (ДЭС), состоящий из равных по величине, но противоположных по знаку электрических зарядов...
Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...
Разработка товарной и ценовой стратегии фирмы на российском рынке хлебопродуктов В начале 1994 г. английская фирма МОНО совместно с бельгийской ПЮРАТОС приняла решение о начале совместного проекта на российском рынке. Эти фирмы ведут деятельность в сопредельных сферах производства хлебопродуктов.
МОНО – крупнейший в Великобритании... |
|