Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1C_pr77_Lang1.doc
Скачиваний:
23
Добавлен:
20.11.2019
Размер:
2.43 Mб
Скачать

ВыбратьДвижения

Выбрать все движения регистра по датам.

Синтаксис:

ВыбратьДвижения(<НачалоВыборки>, <КонецВыборки>, <ГрафаОтбора>)

Англоязычный синоним:

SelectActs

Параметры:

<НачалоВыборки>

Выражение типа дата, документ или позиция доку­мента, задающее начало временного интервала выбо­ра движений регистра.

<КонецВыборки>

Выражение типа дата, документ или позиция доку­мента задающее конец временного интервала выбора движений регистра.

<ГрафаОтбора>

Необязательный параметр. Строковое выражение — идентификатор графы отбора, как он задан в конфи­гураторе. Данный параметр устанавливает режим использования определенной графы отбора. "*" — автоматический выбор графы отбора. Пустая строка — не использовать графу отбора. По умолчанию устанавливается автоматический вы­бор графы отбора.

Описание:

Метод ВыбратьДвижения инициирует выбор всех движений регистра в указанном интервале дат. До вызова данной процедуры может быть установлен фильтр (см. УстановитьФильтр), ограничивающий выборку значений из регистра. Если <КонецВыборки> не указан или равен 0, то концом временно­го интервала выбора движений регистра считается ТА.

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

Пример:

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

Если Режим = "Подробно" Тогда

Рег1.УстановитьФильтр(Клиент);

Рег1.ВыбратьДвижения(ДатаНачало, );

Пока Рег1.ПолучитьДвижение() > 0 Цикл

Док = Рег1.ТекущийДокумент();

Дв_Баз_Сум = Рег1.СуммаБазовая;

Дв_Вал_Сум = Рег1.СуммаВалютная;

Если Рег1.Расход = 1 Тогда

Таб.ВывестиСекцию("Расход2");

Иначе

Таб.ВывестиСекцию("Приход2");

КонецЕсли;

КонецЦикла;

КонецЕсли;

См. также: ПолучитьДвижение

ВыбратьДвиженияДокумента

Выбрать все движения регистра по документу.

Синтаксис:

ВыбратьДвиженияДокумента(<Документ>)

Англоязычный синоним:

SelectDocActs

Параметры:

<Документ>

Значение типа Документ.

Возвращаемое значение:

Число: 1 — если действие выполнено и в выборке есть хотя бы один эле­мент; 0 — если действие не выполнено или в выборке нет ни одного элемента.

Описание:

Метод ВыбратьДвиженияДокумента инициирует выбор всех движений регистра по указанному документу <Документ>.

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

Пример:

Процедура Взаиморасчеты(ВыбКлиент, ДатаНачало, ДатаКонец)

// Создание Таблицы для выходного отчета

Заг = "Неизвестно.";

Таб = СоздатьОбъект("Таблица");

Клн = СоздатьОбъект("Справочник.Клиенты");

Клн.ИспользоватьДату(ДатаКонец);

Док = СоздатьОбъект("Документ");

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

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

Рег.ВременныйРасчет();

РассчитатьРегистрыНа(ДатаКонец);

Если ВыбКлиент.Выбран() = 0 Тогда

//Без условий

Заг = "По всем клиентам.";

ИначеЕсли ВыбКлиент.ЭтоГруппа() = 1 Тогда

Клн.ВключатьПодчиненные(ВыбКлиент);

Клн.ИспользоватьРодителя(ВыбКлиент);

Заг = "По клиентам группы " + ВыбКлиент.Наименование;

Иначе

Предупреждение("Выберите группу клиентов!");

Возврат;

КонецЕсли;

Таб.ВывестиСекцию("Отчет");

Клн.ВыбратьЭлементы();

Пока Клн.ПолучитьЭлемент() > 0 Цикл

Если Клн.ЭтоГруппа() = 1 Тогда

Таб.ВывестиСекцию("Группа");

Иначе

Рег.Клиент = Клн.ТекущийЭлемент();

Рег.ОстаткиПолучить();

Баз_сум = Рег.СуммаБазовая;

Вал_сум = Рег.СуммаВалютная;

Таб.ВывестиСекцию("Клиент");

// цикл по всем документам

Док.ВыбратьДокументы(ДатаНачало, ДатаКонец);

Пока Док.ПолучитьДокумент() > 0 Цикл

// отфильтруем документы

Если (Док.Вид() = "Перемещение") ИЛИ (Док.Вид() = "Счет") ИЛИ

(Док.Вид() = "Списание") ИЛИ

(Док.Вид() = "РучноеИзмОстатка") Тогда

// Эти Документы не изменяют Взаиморасчеты

Продолжить;

КонецЕсли;

// выберем все движения регистра по документу

Рег1.ВыбратьДвиженияДокумента(Док.ТекущийДокумент());

Пока Рег1.ПолучитьДвижение() > 0 Цикл

Если Строка(Рег1.Клиент.Код) <> Строка(Клн.Код) Тогда

// не тот клиент

Продолжить;

КонецЕсли;

Дв_Баз_Сум = Рег1.СуммаБазовая;

Дв_Вал_Сум = Рег1.СуммаВалютная;

Если Рег1.Приход = 1 Тогда

Таб.ВывестиСекцию("Приход");

Иначе

Таб.ВывестиСекцию("Расход");

КонецЕсли;

КонецЦикла;

КонецЦикла;

КонецЕсли;

КонецЦикла;

//Вызов выходного отчета в окно просмотра и редактирования.

Таб.ТолькоПросмотр(1);

Таб.Опции(0, 0, 4, 0);

Таб.Показать("Взаиморасчеты с клиентами", "");

ВыбКлиент = 0;

КонецПроцедуры

См. также: ПолучитьДвижение

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]