mirror of
https://github.com/bia-technologies/yaxunit.git
synced 2024-12-12 09:04:01 +02:00
Merge branch 'feature/LF' into develop
This commit is contained in:
commit
2704496a74
@ -1,25 +1,25 @@
|
||||
&НаСервере
|
||||
Процедура Заполнить()
|
||||
Запрос = Новый Запрос("ВЫБРАТЬ
|
||||
| ВзаиморасчетыОстатки.Контрагент,
|
||||
| ВзаиморасчетыОстатки.Валюта,
|
||||
| ВзаиморасчетыОстатки.СуммаОстаток КАК СуммаОстаток
|
||||
|ИЗ
|
||||
| РегистрНакопления.Взаиморасчеты.Остатки КАК ВзаиморасчетыОстатки
|
||||
&НаСервере
|
||||
Процедура Заполнить()
|
||||
Запрос = Новый Запрос("ВЫБРАТЬ
|
||||
| ВзаиморасчетыОстатки.Контрагент,
|
||||
| ВзаиморасчетыОстатки.Валюта,
|
||||
| ВзаиморасчетыОстатки.СуммаОстаток КАК СуммаОстаток
|
||||
|ИЗ
|
||||
| РегистрНакопления.Взаиморасчеты.Остатки КАК ВзаиморасчетыОстатки
|
||||
|АВТОУПОРЯДОЧИВАНИЕ");
|
||||
Выборка = Запрос.Выполнить().Выбрать();
|
||||
Пока Выборка.Следующий() Цикл
|
||||
НоваяСтрока = ТаблицаОстатков.Добавить();
|
||||
НоваяСтрока.Контрагент = Выборка.Контрагент;
|
||||
НоваяСтрока.Валюта = Выборка.Валюта;
|
||||
Если Выборка.СуммаОстаток > 0 Тогда
|
||||
НоваяСтрока.НашДолг = Выборка.СуммаОстаток;
|
||||
Иначе
|
||||
НоваяСтрока.ДолгНам = Выборка.СуммаОстаток * -1;
|
||||
КонецЕсли;
|
||||
КонецЦикла
|
||||
|
||||
КонецПроцедуры
|
||||
Выборка = Запрос.Выполнить().Выбрать();
|
||||
Пока Выборка.Следующий() Цикл
|
||||
НоваяСтрока = ТаблицаОстатков.Добавить();
|
||||
НоваяСтрока.Контрагент = Выборка.Контрагент;
|
||||
НоваяСтрока.Валюта = Выборка.Валюта;
|
||||
Если Выборка.СуммаОстаток > 0 Тогда
|
||||
НоваяСтрока.НашДолг = Выборка.СуммаОстаток;
|
||||
Иначе
|
||||
НоваяСтрока.ДолгНам = Выборка.СуммаОстаток * -1;
|
||||
КонецЕсли;
|
||||
КонецЦикла
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
||||
@ -29,7 +29,7 @@
|
||||
&НаКлиенте
|
||||
Процедура ТаблицаОстатковВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
|
||||
ПоказатьЗначение( ,ТаблицаОстатков.НайтиПоИдентификатору(ВыбраннаяСтрока).Контрагент);
|
||||
СтандартнаяОбработка = Ложь;
|
||||
СтандартнаяОбработка = Ложь;
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
|
@ -102,9 +102,9 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ПриОткрытии(Отказ)
|
||||
@ -135,7 +135,7 @@
|
||||
#КонецЕсли
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
&НаКлиенте
|
||||
Процедура НовыйРасчетныйСчетВыполнить()
|
||||
|
||||
@ -146,11 +146,11 @@
|
||||
|
||||
// Подготовка параметров и открытие формы нового расчетного счета контрагента.
|
||||
ЗначенияЗаполнения = Новый Структура();
|
||||
ЗначенияЗаполнения.Вставить("НаименованиеЗаполнить", "Р/С " + Объект.Наименование);
|
||||
ЗначенияЗаполнения.Вставить("Владелец", Объект.Ссылка);
|
||||
СтруктураПараметров = Новый Структура("ЗначенияЗаполнения", ЗначенияЗаполнения);
|
||||
ЗначенияЗаполнения.Вставить("НаименованиеЗаполнить", "Р/С " + Объект.Наименование);
|
||||
ЗначенияЗаполнения.Вставить("Владелец", Объект.Ссылка);
|
||||
СтруктураПараметров = Новый Структура("ЗначенияЗаполнения", ЗначенияЗаполнения);
|
||||
ОткрытьФорму("Справочник.РасчетныеСчетаКонтрагентов.ФормаОбъекта", СтруктураПараметров);
|
||||
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
|
@ -1,8 +1,8 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ ОБЪЕКТА
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ ОБЪЕКТА
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Обработчик события "Проверка заполнения"
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Обработчик события "Проверка заполнения"
|
||||
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
|
||||
|
||||
// Если это группа,
|
||||
@ -32,10 +32,10 @@
|
||||
Если НЕ ПустаяСтрока(Улица) Тогда
|
||||
|
||||
// Тогда, должны быть заполнены и поля Регион, Город, и Дом.
|
||||
ПроверяемыеРеквизиты.Добавить("Регион");
|
||||
ПроверяемыеРеквизиты.Добавить("Регион");
|
||||
ПроверяемыеРеквизиты.Добавить("Город");
|
||||
ПроверяемыеРеквизиты.Добавить("Дом");
|
||||
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
@ -1,13 +1,13 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
&НаСервере
|
||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
||||
|
||||
Если Параметры.Ключ.Пустая() Тогда
|
||||
|
||||
Объект.БитДанных = 8;
|
||||
Объект.БитДанных = 8;
|
||||
Объект.Скорость = 9600;
|
||||
Объект.Порт = "COM1";
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
&НаСервере
|
||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
|
||||
СправочникСписок.Параметры.УстановитьЗначениеПараметра("ПоВсемСкладам", Ложь);
|
||||
СправочникСписок.Параметры.УстановитьЗначениеПараметра("Склад", Параметры.ОстаткиПоСкладу);
|
||||
|
||||
|
||||
Иначе
|
||||
|
||||
Отказ = Истина;
|
||||
|
@ -9,4 +9,4 @@
|
||||
// Подключение внешней компоненты
|
||||
НачатьУстановкуВнешнейКомпоненты(, "ОбщийМакет.ДрайверСканераШтрихкодов");
|
||||
|
||||
КонецПроцедуры
|
||||
КонецПроцедуры
|
||||
|
@ -1,5 +1,5 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ПЕРЕМЕННЫЕ МОДУЛЯ
|
||||
//
|
||||
|
||||
Перем ДрайверСканераШтрихкодов Экспорт; // Сканер штрихкодов
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ПЕРЕМЕННЫЕ МОДУЛЯ
|
||||
//
|
||||
|
||||
Перем ДрайверСканераШтрихкодов Экспорт; // Сканер штрихкодов
|
||||
|
@ -5,33 +5,33 @@
|
||||
&НаКлиенте
|
||||
Перем АдресТоваровВХранилище;
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ПРОЦЕДУРЫ И ФУНКЦИИ
|
||||
//
|
||||
|
||||
// Функция возвращает цену определенного товара на дату согласно виду цены
|
||||
//
|
||||
// Параметры:
|
||||
// Дата – Дата – дата, на которую определяется цена.
|
||||
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
|
||||
// ВидЦен – СправочникСсылка.ВидыЦен – вид цены.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Число - Цена товара на определенную дату, согласно виду цены.
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ПРОЦЕДУРЫ И ФУНКЦИИ
|
||||
//
|
||||
|
||||
// Функция возвращает цену определенного товара на дату согласно виду цены
|
||||
//
|
||||
// Параметры:
|
||||
// Дата – Дата – дата, на которую определяется цена.
|
||||
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
|
||||
// ВидЦен – СправочникСсылка.ВидыЦен – вид цены.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Число - Цена товара на определенную дату, согласно виду цены.
|
||||
&НаСервереБезКонтекста
|
||||
Функция ПолучитьЦенуТовара(Дата, Товар, ВидЦен)
|
||||
ЦенаТовара = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(
|
||||
Дата, Новый Структура("Товар, ВидЦен", Товар, ВидЦен));
|
||||
Возврат ЦенаТовара.Цена;
|
||||
КонецФункции
|
||||
|
||||
// Функция возвращает вид цены для указанного покупателя
|
||||
//
|
||||
// Параметры:
|
||||
// Покупатель – СправочникСсылка.Контрагенты – контрагент.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.ВидыЦен - Вид цены для указанного покупателя.
|
||||
Функция ПолучитьЦенуТовара(Дата, Товар, ВидЦен)
|
||||
ЦенаТовара = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(
|
||||
Дата, Новый Структура("Товар, ВидЦен", Товар, ВидЦен));
|
||||
Возврат ЦенаТовара.Цена;
|
||||
КонецФункции
|
||||
|
||||
// Функция возвращает вид цены для указанного покупателя
|
||||
//
|
||||
// Параметры:
|
||||
// Покупатель – СправочникСсылка.Контрагенты – контрагент.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.ВидыЦен - Вид цены для указанного покупателя.
|
||||
&НаСервереБезКонтекста
|
||||
Функция ПолучитьВидЦенПокупателя(Покупатель)
|
||||
Запрос = Новый Запрос();
|
||||
@ -41,7 +41,7 @@
|
||||
Если Выборка.Следующий() Тогда
|
||||
Возврат Выборка.ВидЦен;
|
||||
КонецЕсли;
|
||||
Возврат Справочники.ВидыЦен.ПустаяСсылка();
|
||||
Возврат Справочники.ВидыЦен.ПустаяСсылка();
|
||||
КонецФункции
|
||||
|
||||
// Функция определяет услуга это или нет
|
||||
@ -50,19 +50,19 @@
|
||||
|
||||
Возврат ?(Товар.Вид = Перечисления.ВидыТоваров.Услуга, Истина, Ложь);
|
||||
|
||||
КонецФункции
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Процедура устанавливает цены товаров и вычисляет суммы по каждой строке
|
||||
// табличной части Товары.
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Нет.
|
||||
// табличной части Товары.
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Нет.
|
||||
&НаСервере
|
||||
Процедура ПересчитатьЦеныИСуммыТоваров(ПересчитатьДляВсехТоваров)
|
||||
Запрос = Новый Запрос();
|
||||
Запрос = Новый Запрос();
|
||||
Запрос.Текст = "ВЫБРАТЬ
|
||||
| ЦеныТоваровСрезПоследних.Цена,
|
||||
| ЦеныТоваровСрезПоследних.Товар
|
||||
@ -70,14 +70,14 @@
|
||||
| РегистрСведений.ЦеныТоваров.СрезПоследних(
|
||||
| ,
|
||||
| ВидЦен = &ВидЦены
|
||||
| И Товар В (&Товары)) КАК ЦеныТоваровСрезПоследних";
|
||||
| И Товар В (&Товары)) КАК ЦеныТоваровСрезПоследних";
|
||||
Запрос.УстановитьПараметр("ВидЦены", Объект.ВидЦен);
|
||||
Товары = Новый Массив();
|
||||
Для каждого Стр Из Объект.Товары Цикл
|
||||
Товары.Добавить(Стр.Товар);
|
||||
КонецЦикла;
|
||||
Товары = Новый Массив();
|
||||
Для каждого Стр Из Объект.Товары Цикл
|
||||
Товары.Добавить(Стр.Товар);
|
||||
КонецЦикла;
|
||||
Запрос.УстановитьПараметр("Товары", Товары);
|
||||
|
||||
|
||||
ТЗЦены = Запрос.Выполнить().Выгрузить();
|
||||
ТЗЦены.Индексы.Добавить("Товар");
|
||||
Для каждого Стр Из Объект.Товары Цикл
|
||||
@ -93,8 +93,8 @@
|
||||
Стр.СуммаИзменена = Ложь;
|
||||
Стр.ЭтоУслуга = ЭтоУслуга(Стр.Товар);
|
||||
КонецЦикла;
|
||||
КонецПроцедуры
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Функция помещает список товаров во временное хранилище и возвращает адрес
|
||||
&НаСервере
|
||||
Функция ПоместитьТоварыВХранилище()
|
||||
@ -109,17 +109,17 @@
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
// Функция возвращает ссылку на текущую строку в списке товаров
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.Товары - Текущий товар в списке.
|
||||
// Функция возвращает ссылку на текущую строку в списке товаров
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.Товары - Текущий товар в списке.
|
||||
&НаКлиенте
|
||||
Функция ПолучитьТекущуюСтрокуТовары()
|
||||
Возврат Элементы.Товары.ТекущиеДанные;
|
||||
КонецФункции
|
||||
Функция ПолучитьТекущуюСтрокуТовары()
|
||||
Возврат Элементы.Товары.ТекущиеДанные;
|
||||
КонецФункции
|
||||
|
||||
// Процедура вычисляет дополнительные данные строки документа
|
||||
&НаКлиентеНаСервереБезКонтекста
|
||||
@ -143,16 +143,16 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ТоварыТоварПриИзменении(Элемент)
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.ЭтоУслуга = ЭтоУслуга(Стр.Товар);
|
||||
Стр.Цена = ПолучитьЦенуТовара(Объект.Дата, Стр.Товар, Объект.ВидЦен);
|
||||
Стр.Количество = ?(Стр.ЭтоУслуга ИЛИ Стр.Количество = 0, 1, Стр.Количество);
|
||||
Стр.Количество = ?(Стр.ЭтоУслуга ИЛИ Стр.Количество = 0, 1, Стр.Количество);
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
ЗаполнитьДополнительныеДанныеСтроки(Стр);
|
||||
КонецПроцедуры
|
||||
@ -177,15 +177,15 @@
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ТоварыЦенаПриИзменении(Элемент)
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
ЗаполнитьДополнительныеДанныеСтроки(Стр);
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ТоварыКоличествоПриИзменении(Элемент)
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
ЗаполнитьДополнительныеДанныеСтроки(Стр);
|
||||
КонецПроцедуры
|
||||
|
||||
@ -194,8 +194,8 @@
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
ЗаполнитьДополнительныеДанныеСтроки(Стр);
|
||||
КонецПроцедуры
|
||||
|
||||
// Обработчик команды подбора
|
||||
|
||||
// Обработчик команды подбора
|
||||
&НаКлиенте
|
||||
Процедура КомандаПодбор()
|
||||
#Если МобильныйКлиент Тогда
|
||||
@ -206,7 +206,7 @@
|
||||
АдресТоваровВХранилище = ПоместитьТоварыВХранилище();
|
||||
ПараметрыПодбора = Новый Структура("АдресТоваровДокумента, ВидЦен, Склад", АдресТоваровВХранилище, Объект.ВидЦен, Объект.Склад);
|
||||
ФормаПодбора = ОткрытьФорму(Имя, ПараметрыПодбора, ЭтотОбъект);
|
||||
КонецПроцедуры
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОрганизацияПриИзменении(Элемент)
|
||||
|
@ -1,7 +1,7 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОрганизацияПриИзменении(Элемент)
|
||||
|
||||
|
@ -1,26 +1,26 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
// Обработчик копирования документа выполняет также копирование движений
|
||||
Процедура ПриКопировании(ОбъектКопирования)
|
||||
ОбъектКопирования.Движения.ТоварныеЗапасы.Прочитать();
|
||||
Для каждого ИсхЗапись Из ОбъектКопирования.Движения.ТоварныеЗапасы Цикл
|
||||
Запись = Движения.ТоварныеЗапасы.Добавить();
|
||||
Запись.ВидДвижения = ИсхЗапись.ВидДвижения;
|
||||
Запись.Товар = ИсхЗапись.Товар;
|
||||
Запись.Склад = ИсхЗапись.Склад;
|
||||
Запись.Количество = ИсхЗапись.Количество;
|
||||
КонецЦикла;
|
||||
КонецПроцедуры
|
||||
Процедура ПриКопировании(ОбъектКопирования)
|
||||
ОбъектКопирования.Движения.ТоварныеЗапасы.Прочитать();
|
||||
Для каждого ИсхЗапись Из ОбъектКопирования.Движения.ТоварныеЗапасы Цикл
|
||||
Запись = Движения.ТоварныеЗапасы.Добавить();
|
||||
Запись.ВидДвижения = ИсхЗапись.ВидДвижения;
|
||||
Запись.Товар = ИсхЗапись.Товар;
|
||||
Запись.Склад = ИсхЗапись.Склад;
|
||||
Запись.Количество = ИсхЗапись.Количество;
|
||||
КонецЦикла;
|
||||
КонецПроцедуры
|
||||
|
||||
// Обработчик события, предшествующего записи, устанавливает всем
|
||||
// движениям дату самого документа
|
||||
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
|
||||
// движениям дату самого документа
|
||||
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
|
||||
|
||||
Для каждого Запись Из Движения.ТоварныеЗапасы Цикл
|
||||
Запись.Период = Дата;
|
||||
КонецЦикла;
|
||||
Для каждого Запись Из Движения.ТоварныеЗапасы Цикл
|
||||
Запись.Период = Дата;
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
КонецПроцедуры
|
||||
|
@ -1,8 +1,8 @@
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
Процедура ОбработкаПроведения(Отказ, Режим)
|
||||
// Формирование движения регистра накопления Взаиморасчеты
|
||||
Движения.Взаиморасчеты.Записывать = Истина;
|
||||
@ -10,7 +10,7 @@
|
||||
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
|
||||
Движение.Период = Дата;
|
||||
Движение.Контрагент = Поставщик;
|
||||
Движение.Сумма = Сумма;
|
||||
Движение.Сумма = Сумма;
|
||||
Движение.Валюта = Валюта;
|
||||
КонецПроцедуры
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
Поставщик = ДанныеЗаполнения.Поставщик;
|
||||
Организация = ДанныеЗаполнения.Организация;
|
||||
Сумма = ДанныеЗаполнения.Товары.Итог("Сумма");
|
||||
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда
|
||||
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда
|
||||
|
||||
ЗапросПоКонтрагенту = Новый Запрос("ВЫБРАТЬ
|
||||
| Контрагенты.ЭтоГруппа
|
||||
@ -34,7 +34,7 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Поставщик = ДанныеЗаполнения.Ссылка;
|
||||
Поставщик = ДанныеЗаполнения.Ссылка;
|
||||
КонецЕсли;
|
||||
КонецПроцедуры
|
||||
|
||||
|
@ -1,10 +1,10 @@
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
Процедура ОбработкаПроведения(Отказ, Режим)
|
||||
// Формирование движения регистра накопления Взаиморасчеты
|
||||
// Формирование движения регистра накопления Взаиморасчеты
|
||||
Движения.Взаиморасчеты.Записывать = Истина;
|
||||
Движение = Движения.Взаиморасчеты.Добавить();
|
||||
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
|
||||
@ -19,7 +19,7 @@
|
||||
Валюта = ДанныеЗаполнения.Валюта;
|
||||
Покупатель = ДанныеЗаполнения.Покупатель;
|
||||
Организация = ДанныеЗаполнения.Организация;
|
||||
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда
|
||||
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда
|
||||
|
||||
ЗапросПоКонтрагенту = Новый Запрос("ВЫБРАТЬ
|
||||
| Контрагенты.ЭтоГруппа
|
||||
@ -33,7 +33,7 @@
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
Покупатель = ДанныеЗаполнения.Ссылка;
|
||||
Покупатель = ДанныеЗаполнения.Ссылка;
|
||||
КонецЕсли;
|
||||
КонецПроцедуры
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ПРОЦЕДУРЫ И ФУНКЦИИ
|
||||
//
|
||||
|
||||
// Функция возвращает закупочную цену определенного товара на дату
|
||||
//
|
||||
// Параметры:
|
||||
// Дата – Дата – дата, на которую определяется цена.
|
||||
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ПРОЦЕДУРЫ И ФУНКЦИИ
|
||||
//
|
||||
|
||||
// Функция возвращает закупочную цену определенного товара на дату
|
||||
//
|
||||
// Параметры:
|
||||
// Дата – Дата – дата, на которую определяется цена.
|
||||
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Число - Цена товара на определенную дату.
|
||||
&НаСервереБезКонтекста
|
||||
Функция ПолучитьЦенуТовара(Дата, Товар)
|
||||
@ -21,29 +21,29 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Функция возвращает ссылку на текущую строку в списке товаров
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.Товары - Текущий товар в списке.
|
||||
// Функция возвращает ссылку на текущую строку в списке товаров
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.Товары - Текущий товар в списке.
|
||||
&НаКлиенте
|
||||
Функция ПолучитьТекущуюСтрокуТовары()
|
||||
Возврат Элементы.Товары.ТекущиеДанные;
|
||||
КонецФункции
|
||||
КонецФункции
|
||||
|
||||
// Функция возвращает товар по штрихкоду
|
||||
// Функция возвращает товар по штрихкоду
|
||||
&НаСервереБезКонтекста
|
||||
Функция ПолучитьТоварПоШтрихкоду(Штрихкод)
|
||||
Возврат Справочники.Товары.НайтиПоРеквизиту("Штрихкод", Штрихкод);
|
||||
КонецФункции
|
||||
|
||||
|
||||
// Функция добавляет товар в накладную или увеличивает кол-во уже добавленного
|
||||
Функция ПолучитьТоварПоШтрихкоду(Штрихкод)
|
||||
Возврат Справочники.Товары.НайтиПоРеквизиту("Штрихкод", Штрихкод);
|
||||
КонецФункции
|
||||
|
||||
|
||||
// Функция добавляет товар в накладную или увеличивает кол-во уже добавленного
|
||||
&НаКлиенте
|
||||
Функция ДобавитьТовар(Товар)
|
||||
|
||||
|
||||
Строки = Объект.Товары.НайтиСтроки(Новый Структура("Товар", Товар));
|
||||
|
||||
Если Строки.Количество() > 0 Тогда
|
||||
@ -51,25 +51,25 @@
|
||||
Элемент = Строки[0];
|
||||
|
||||
Иначе
|
||||
|
||||
Элемент = Объект.Товары.Добавить();
|
||||
Элемент.Товар = Товар;
|
||||
|
||||
Элемент = Объект.Товары.Добавить();
|
||||
Элемент.Товар = Товар;
|
||||
Элемент.Цена = ПолучитьЦенуТовара(Объект.Дата, Товар);
|
||||
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Элемент.Количество = Элемент.Количество + 1;
|
||||
|
||||
Элемент.Количество = Элемент.Количество + 1;
|
||||
Элемент.Сумма = Элемент.Количество * Элемент.Цена;
|
||||
|
||||
Элементы.Товары.ТекущаяСтрока = Элемент.ПолучитьИдентификатор();
|
||||
Элементы.Товары.ТекущийЭлемент = Элементы.Товары.ПодчиненныеЭлементы.ТоварыКоличество;
|
||||
Элементы.Товары.ИзменитьСтроку();
|
||||
|
||||
КонецФункции
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
КонецФункции
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ТоварыТоварПриИзменении(Элемент)
|
||||
@ -83,34 +83,34 @@
|
||||
&НаКлиенте
|
||||
Процедура ТоварыЦенаПриИзменении(Элемент)
|
||||
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ТоварыКоличествоПриИзменении(Элемент)
|
||||
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
&НаКлиенте
|
||||
Процедура ВнешнееСобытие(Источник, Событие, Данные)
|
||||
|
||||
Если Источник = "СканерШтрихкода" Тогда
|
||||
|
||||
Если ВводДоступен() Тогда
|
||||
Товар = ПолучитьТоварПоШтрихкоду(Данные);
|
||||
Если НЕ Товар.Пустая() Тогда
|
||||
ДобавитьТовар(Товар);
|
||||
Товар = ПолучитьТоварПоШтрихкоду(Данные);
|
||||
Если НЕ Товар.Пустая() Тогда
|
||||
ДобавитьТовар(Товар);
|
||||
КонецЕсли
|
||||
КонецЕсли
|
||||
|
||||
|
||||
КонецЕсли
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОрганизацияПриИзменении(Элемент)
|
||||
|
@ -16,16 +16,16 @@
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
// Создание движения в регистре накопления Взаиморасчеты
|
||||
// Создание движения в регистре накопления Взаиморасчеты
|
||||
Движения.Взаиморасчеты.Записывать = Истина;
|
||||
Движение = Движения.Взаиморасчеты.Добавить();
|
||||
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
|
||||
Движение.Период = Дата;
|
||||
Движение.Контрагент = Поставщик;
|
||||
Движение = Движения.Взаиморасчеты.Добавить();
|
||||
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
|
||||
Движение.Период = Дата;
|
||||
Движение.Контрагент = Поставщик;
|
||||
Движение.Валюта = Валюта;
|
||||
|
||||
Если Валюта.Пустая() Тогда
|
||||
|
||||
|
||||
Движение.Сумма = Товары.Итог("Сумма");
|
||||
|
||||
Иначе
|
||||
@ -37,8 +37,8 @@
|
||||
Иначе
|
||||
Движение.Сумма = Товары.Итог("Сумма") / Курс;
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
@ -5,33 +5,33 @@
|
||||
&НаКлиенте
|
||||
Перем АдресТоваровВХранилище;
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ПРОЦЕДУРЫ И ФУНКЦИИ
|
||||
//
|
||||
|
||||
// Функция возвращает цену определенного товара на дату согласно виду цены
|
||||
//
|
||||
// Параметры:
|
||||
// Дата – Дата – дата, на которую определяется цена.
|
||||
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
|
||||
// ВидЦен – СправочникСсылка.ВидыЦен – вид цены.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Число - Цена товара на определенную дату, согласно виду цены.
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ПРОЦЕДУРЫ И ФУНКЦИИ
|
||||
//
|
||||
|
||||
// Функция возвращает цену определенного товара на дату согласно виду цены
|
||||
//
|
||||
// Параметры:
|
||||
// Дата – Дата – дата, на которую определяется цена.
|
||||
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
|
||||
// ВидЦен – СправочникСсылка.ВидыЦен – вид цены.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Число - Цена товара на определенную дату, согласно виду цены.
|
||||
&НаСервереБезКонтекста
|
||||
Функция ПолучитьЦенуТовара(Дата, Товар, ВидЦен)
|
||||
ЦенаТовара = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(
|
||||
Дата, Новый Структура("Товар, ВидЦен", Товар, ВидЦен));
|
||||
Возврат ЦенаТовара.Цена;
|
||||
КонецФункции
|
||||
|
||||
// Функция возвращает вид цены для указанного покупателя
|
||||
//
|
||||
// Параметры:
|
||||
// Покупатель – СправочникСсылка.Контрагенты – контрагент.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.ВидыЦен - Вид цены для указанного покупателя.
|
||||
Функция ПолучитьЦенуТовара(Дата, Товар, ВидЦен)
|
||||
ЦенаТовара = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(
|
||||
Дата, Новый Структура("Товар, ВидЦен", Товар, ВидЦен));
|
||||
Возврат ЦенаТовара.Цена;
|
||||
КонецФункции
|
||||
|
||||
// Функция возвращает вид цены для указанного покупателя
|
||||
//
|
||||
// Параметры:
|
||||
// Покупатель – СправочникСсылка.Контрагенты – контрагент.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.ВидыЦен - Вид цены для указанного покупателя.
|
||||
&НаСервереБезКонтекста
|
||||
Функция ПолучитьВидЦенПокупателя(Покупатель)
|
||||
Запрос = Новый Запрос();
|
||||
@ -41,7 +41,7 @@
|
||||
Если Выборка.Следующий() Тогда
|
||||
Возврат Выборка.ВидЦен;
|
||||
КонецЕсли;
|
||||
Возврат Справочники.ВидыЦен.ПустаяСсылка();
|
||||
Возврат Справочники.ВидыЦен.ПустаяСсылка();
|
||||
КонецФункции
|
||||
|
||||
// Функция определяет услуга это или нет
|
||||
@ -50,19 +50,19 @@
|
||||
|
||||
Возврат ?(Товар.Вид = Перечисления.ВидыТоваров.Услуга, Истина, Ложь);
|
||||
|
||||
КонецФункции
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Процедура устанавливает цены товаров и вычисляет суммы по каждой строке
|
||||
// табличной части Товары.
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Нет.
|
||||
// табличной части Товары.
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Нет.
|
||||
&НаСервере
|
||||
Процедура ПересчитатьЦеныИСуммыТоваров(ПересчитатьДляВсехТоваров)
|
||||
Запрос = Новый Запрос();
|
||||
Запрос = Новый Запрос();
|
||||
Запрос.Текст = "ВЫБРАТЬ
|
||||
| ЦеныТоваровСрезПоследних.Цена,
|
||||
| ЦеныТоваровСрезПоследних.Товар
|
||||
@ -70,14 +70,14 @@
|
||||
| РегистрСведений.ЦеныТоваров.СрезПоследних(
|
||||
| ,
|
||||
| ВидЦен = &ВидЦены
|
||||
| И Товар В (&Товары)) КАК ЦеныТоваровСрезПоследних";
|
||||
| И Товар В (&Товары)) КАК ЦеныТоваровСрезПоследних";
|
||||
Запрос.УстановитьПараметр("ВидЦены", Объект.ВидЦен);
|
||||
Товары = Новый Массив();
|
||||
Для каждого Стр Из Объект.Товары Цикл
|
||||
Товары.Добавить(Стр.Товар);
|
||||
КонецЦикла;
|
||||
Товары = Новый Массив();
|
||||
Для каждого Стр Из Объект.Товары Цикл
|
||||
Товары.Добавить(Стр.Товар);
|
||||
КонецЦикла;
|
||||
Запрос.УстановитьПараметр("Товары", Товары);
|
||||
|
||||
|
||||
ТЗЦены = Запрос.Выполнить().Выгрузить();
|
||||
ТЗЦены.Индексы.Добавить("Товар");
|
||||
Для каждого Стр Из Объект.Товары Цикл
|
||||
@ -93,8 +93,8 @@
|
||||
Стр.СуммаИзменена = Ложь;
|
||||
Стр.ЭтоУслуга = ЭтоУслуга(Стр.Товар);
|
||||
КонецЦикла;
|
||||
КонецПроцедуры
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Функция помещает список товаров во временное хранилище и возвращает адрес
|
||||
&НаСервере
|
||||
Функция ПоместитьТоварыВХранилище()
|
||||
@ -109,17 +109,17 @@
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
// Функция возвращает ссылку на текущую строку в списке товаров
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.Товары - Текущий товар в списке.
|
||||
// Функция возвращает ссылку на текущую строку в списке товаров
|
||||
//
|
||||
// Параметры:
|
||||
// Нет.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.Товары - Текущий товар в списке.
|
||||
&НаКлиенте
|
||||
Функция ПолучитьТекущуюСтрокуТовары()
|
||||
Возврат Элементы.Товары.ТекущиеДанные;
|
||||
КонецФункции
|
||||
Функция ПолучитьТекущуюСтрокуТовары()
|
||||
Возврат Элементы.Товары.ТекущиеДанные;
|
||||
КонецФункции
|
||||
|
||||
// Процедура вычисляет дополнительные данные строки документа
|
||||
&НаКлиентеНаСервереБезКонтекста
|
||||
@ -130,16 +130,16 @@
|
||||
КонецПроцедуры
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ОБРАБОТЧИКИ СОБЫТИЙ
|
||||
//
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ТоварыТоварПриИзменении(Элемент)
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.ЭтоУслуга = ЭтоУслуга(Стр.Товар);
|
||||
Стр.Цена = ПолучитьЦенуТовара(Объект.Дата, Стр.Товар, Объект.ВидЦен);
|
||||
Стр.Количество = ?(Стр.ЭтоУслуга ИЛИ Стр.Количество = 0, 1, Стр.Количество);
|
||||
Стр.Количество = ?(Стр.ЭтоУслуга ИЛИ Стр.Количество = 0, 1, Стр.Количество);
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
ЗаполнитьДополнительныеДанныеСтроки(Стр);
|
||||
КонецПроцедуры
|
||||
@ -164,15 +164,15 @@
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ТоварыЦенаПриИзменении(Элемент)
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
ЗаполнитьДополнительныеДанныеСтроки(Стр);
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ТоварыКоличествоПриИзменении(Элемент)
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
Стр.Сумма = Стр.Количество * Стр.Цена;
|
||||
ЗаполнитьДополнительныеДанныеСтроки(Стр);
|
||||
КонецПроцедуры
|
||||
|
||||
@ -181,8 +181,8 @@
|
||||
Стр = ПолучитьТекущуюСтрокуТовары();
|
||||
ЗаполнитьДополнительныеДанныеСтроки(Стр);
|
||||
КонецПроцедуры
|
||||
|
||||
// Обработчик команды подбора
|
||||
|
||||
// Обработчик команды подбора
|
||||
&НаКлиенте
|
||||
Процедура КомандаПодбор()
|
||||
#Если МобильныйКлиент Тогда
|
||||
@ -193,7 +193,7 @@
|
||||
АдресТоваровВХранилище = ПоместитьТоварыВХранилище();
|
||||
ПараметрыПодбора = Новый Структура("АдресТоваровДокумента, ВидЦен, Склад", АдресТоваровВХранилище, Объект.ВидЦен, Объект.Склад);
|
||||
ФормаПодбора = ОткрытьФорму(Имя, ПараметрыПодбора, ЭтотОбъект);
|
||||
КонецПроцедуры
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура ПересчитатьНаСервере()
|
||||
|
@ -39,8 +39,8 @@
|
||||
Ответ.УстановитьТелоИзСтроки("Неизвестное имя метода");
|
||||
КонецЕсли;
|
||||
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
Возврат Ответ;
|
||||
КонецФункции
|
||||
|
||||
|
||||
|
@ -70,7 +70,7 @@
|
||||
Возврат Ответ;
|
||||
|
||||
|
||||
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция СоздатьXMLПоВыборке(Выборка)
|
||||
@ -212,5 +212,5 @@
|
||||
КонецПопытки;
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
|
||||
КонецФункции
|
||||
|
@ -4,5 +4,5 @@
|
||||
|
||||
ПараметрыФормы = Новый Структура("Отбор,КлючНазначенияИспользования,СформироватьПриОткрытии", Новый Структура("Склад", ПараметрКоманды), "ОстаткиПоСкладу", Истина);
|
||||
ОткрытьФорму("Отчет.ОстаткиТоваровНаСкладах.Форма", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно);
|
||||
|
||||
|
||||
КонецПроцедуры
|
||||
|
Loading…
Reference in New Issue
Block a user