Дипломная работа: Автоматизация расчетов с поставщиками и подрядчиками в ООО «Городской супермаркет»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
77
| АктСверкиВзаиморасчетовПоДаннымОрганизации.Ссылка.ОстатокНаНачало
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| 0,
| 0,
| АктСверкиВзаиморасчетов.Ссылка.Организация,
| АктСверкиВзаиморасчетов.Ссылка.Контрагент,
| АктСверкиВзаиморасчетов.Ссылка.ВалютаДокумента,
| АктСверкиВзаиморасчетов.Ссылка.ДоговорКонтрагента,
| АктСверкиВзаиморасчетов.Ссылка.СверкаСогласована,
| ИСТИНА,
| АктСверкиВзаиморасчетов.Ссылка.ОстатокНаНачало
|ИЗ
| Документ.АктСверкиВзаиморасчетов КАК АктСверкиВзаиморасчетов
|ГДЕ
| АктСверкиВзаиморасчетов.Ссылка = &Ссылка
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| СУММА(ВТ_ДанныеПоАкту.Дебет) КАК Дебет,
| СУММА(ВТ_ДанныеПоАкту.Кредит) КАК Кредит,
| ВТ_ДанныеПоАкту.Организация КАК Организация,
| ВТ_ДанныеПоАкту.Контрагент КАК Контрагент,
| ВТ_ДанныеПоАкту.Валюта КАК Валюта,
| ВТ_ДанныеПоАкту.Договор КАК Договор,
| ВТ_ДанныеПоАкту.Согласован КАК Согласован,
| ВТ_ДанныеПоАкту.Пометка КАК Пометка,
| ВТ_ДанныеПоАкту.ОстатокНаНачало КАК ОстатокНаНачало
|ИЗ
| ВТ_ДанныеПоАкту КАК ВТ_ДанныеПоАкту
|
78
ГРУППИРОВАТЬ ПО
| ВТ_ДанныеПоАкту.Пометка,
| ВТ_ДанныеПоАкту.Согласован,
| ВТ_ДанныеПоАкту.Валюта,
| ВТ_ДанныеПоАкту.Контрагент,
| ВТ_ДанныеПоАкту.Договор,
| ВТ_ДанныеПоАкту.Организация,
| ВТ_ДанныеПоАкту.ОстатокНаНачало";
Запрос.УстановитьПараметр("Ссылка", СтрокаТЧ.АктСверки);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Если ВыборкаДетальныеЗаписи.Следующий() Тогда
ЗаполнитьЗначенияСвойств(СтрокаТЧ, ВыборкаДетальныеЗаписи);
СтрокаТЧ.ОстатокНаКонец = ВыборкаДетальныеЗаписи.ОстатокНаНачало
+ ВыборкаДетальныеЗаписи.Дебет
- ВыборкаДетальныеЗаписи.Кредит;
Запрос.Текст =
"ВЫБРАТЬ
| КонтрагентыКонтактнаяИнформация.Представление
|ИЗ
| Справочник.Контрагенты.КонтактнаяИнформация КАК
КонтрагентыКонтактнаяИнформация
|ГДЕ
| КонтрагентыКонтактнаяИнформация.Ссылка = &Ссылка
| И КонтрагентыКонтактнаяИнформация.Тип = &Тип
| И КонтрагентыКонтактнаяИнформация.Вид = &Вид";
Запрос.УстановитьПараметр("Вид",
Справочники.ВидыКонтактнойИнформации.EmailКонтрагенты);
79
Запрос.УстановитьПараметр("Ссылка", ВыборкаДетальныеЗаписи.Контрагент);
Запрос.УстановитьПараметр("Тип",
Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты);
ТЗКонтакты = Запрос.Выполнить().Выгрузить();
СтрокаКонтакты = "";
Для каждого СтрокаТЗ из ТЗКонтакты Цикл
СтрокаКонтакты = СтрокаКонтакты + ?(СтрокаКонтакты = "", "", ";") +
СтрокаТЗ.Представление;
КонецЦикла;
СтрокаТЧ.ЭлектроннаяПочта = СтрокаКонтакты;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПоДоговорамПриИзменении(Элемент)
Элементы.СписокДоговоров.Видимость = Объект.ПоДоговорам;
Если Объект.ПоДоговорам Тогда
Элементы.СписокВидовДоговоров.Видимость = Ложь;
Объект.ПоВидамДоговоров = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПоВидамДоговоровПриИзменении(Элемент)
Элементы.СписокВидовДоговоров.Видимость = Объект.ПоВидамДоговоров;
Если Объект.ПоВидамДоговоров Тогда
Элементы.СписокДоговоров.Видимость = Ложь;
Объект.ПоДоговорам = Ложь;
80
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура СписокДоговоровНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ПараметрыОткрытия = Новый Структура("СписокДоговоров, СписокКонтрагентов",
Объект.СписокДоговоров, Объект.СписокКонтрагентов);
ОткрытьФорму("ВнешняяОбработка.АвтоматическоеФормированиеАктовСверки.Форма.Форм
аПодбораДоговоров",
ПараметрыОткрытия, ЭтаФорма, Новый
УникальныйИдентификатор,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецПроцедуры
#КонецОбласти
#Область ТиповыеПроцедурыИФункцииМодуляФормы
&НаСервере
Функция ЗаполнитьПоДаннымБухгалтерскогоУчета(ЗаполнятьДанныеКонтрагента, АктСверки)
ВалютаРегламентированногоУчета =
Константы.ВалютаРегламентированногоУчета.Получить();
АдресХранилищаСОшибками = ПоместитьВоВременноеХранилище(Неопределено,
УникальныйИдентификатор);
Результат = Новый Структура();
Результат.Вставить("ЗаданиеВыполнено", Ложь);
Результат.Вставить("Успешно", Ложь);
// проверим заполненность обязательных реквизитов
81
Если НЕ ПроверитьЗаполнение() Тогда
Возврат Результат;
КонецЕсли;
СтруктураПараметров = Новый Структура;
СтруктураПараметров.Вставить("ДатаНачала", АктСверки.ДатаНачала);
СтруктураПараметров.Вставить("ДатаОкончания", Новый
Граница(КонецДня(АктСверки.ДатаОкончания), ВидГраницы.Включая));
СтруктураПараметров.Вставить("Организация", АктСверки.Организация);
СтруктураПараметров.Вставить("Контрагент", АктСверки.Контрагент);
СтруктураПараметров.Вставить("СОбособленнымиПодразделениями",
АктСверки.СОбособленнымиПодразделениями);
СтруктураПараметров.Вставить("ВыводитьСчетаФактуры",
АктСверки.ВыводитьСчетаФактуры);
СтруктураПараметров.Вставить("ЗаполнятьДанныеКонтрагента",
ЗаполнятьДанныеКонтрагента);
СтруктураПараметров.Вставить("Валюта", ?((АктСверки.ВалютаДокумента =
ВалютаРегламентированногоУчета), Неопределено, АктСверки.ВалютаДокумента));
Если Объект.ПоСчетам Тогда
АктСверки.СписокСчетов.Очистить();
Для Каждого Счет Из Объект.СписокСчетов Цикл
НовыйСчет = АктСверки.СписокСчетов.Добавить();
НовыйСчет.Счет = Счет.Значение;
НовыйСчет.УчаствуетВРасчетах = Истина;
КонецЦикла;
КонецЕсли;
// Выгружаем счета в массив
ФильтрСписокСчетов = АктСверки.СписокСчетов.ВыгрузитьКолонку("Счет");
Если ФильтрСписокСчетов.Количество() = 0 Тогда
ТекстОшибки = НСтр("ru='Не задан список счетов, по которым производится сверка.'");
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки, , ,
"АктСверки.СписокСчетов");
Источник: https://baza.diplomsite.ru/previewfile/581