Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
13 Дек 2017, 22:04
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Поле объекта не обнаружено  (Прочитано 3920 раз)

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

Оффлайн Pahan91

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-05
  • Сайт: 
  • Профессия: Ученик 1С
День добрый. ВГДБ, есть обработка выгрузка в ОСЗН, там в табличной части поле Общая площадь помещения. Нужно заменить на жилую площадь.
НоваяСтрокаЛС.sob = ТекЛС.ОбщаяПлощадь;
Меняю на:
НоваяСтрокаЛС.sob = ТекЛС.ЖилаяПлощадь; ==> Поле объекта не обнаружено "жилая площадь"


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Что есть "ВГДБ"? О какой конфигурации идет речь?
Или вопрос только "для тех, кто в теме"?
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Онлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6558
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Значит ТекЛС не содержит такого поля. Либо добавьте его туда предварительно, либо выберите другое.

ВДГБ: http://www.vdgb.ru/

Оффлайн Pahan91

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-05
  • Сайт: 
  • Профессия: Ученик 1С
ТекЛС есть лицевой счет. Там рядом идут поля Общая площадь и жилая площадь. Может я что-то недопонял

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Это в документе может быть и есть такие реквизиты.
А в этой переменной (типа "структура"?) может быть выбираются только определенные реквизиты...

Без кода целиком, конфигурации под рукой - гадать можно долго долго...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Pahan91

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-05
  • Сайт: 
  • Профессия: Ученик 1С
Код обработки я могу выложить (могу и кусок проблемный), но боюсь меня лесом пошлют.

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Pahan91, да ладно, не держите в себе ;)
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Pahan91

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-05
  • Сайт: 
  • Профессия: Ученик 1С
На форме выделено поле, куда должна вывестись жилая площадь.
Добавлено: 22 Окт 2014, 14:45

Было ТекСтрока.ОбщаяПлощадь - тянулось.  Делаю ЖилаяПлощадь -- Поле не найдено. В ЛС они рядом идут

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Не хватает кода. Надо смотреть где формируется "СведенияОЛицевыхСчетах"...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Pahan91

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-09-05
  • Сайт: 
  • Профессия: Ученик 1С
Перем СписокВидовУслуг1;
Перем СписокВидовУслуг2;
Перем СписокВидовУслуг3;
Перем СписокВидовБлагоустройств1;
Перем СписокВидовБлагоустройств2;
Перем ИмяГод;
Перем ИмяМесяц;

////////////////////////////////////////////////////////////////////////////////
// ПРОЧИЕ ПРОЦЕДУРЫ И ФУНКЦИИ

// Создает новое имя файла выгрузки.
Функция НовоеИмяФайла(Индекс)

ИмяФайла = "";
ИмяФайла = ИмяФайла + Строка(КодОрганизации) + Строка(Формат(Период, "ДФ = MM")) + Строка(Формат(Период, "ДФ = yy")) + Строка(Индекс) + ".DBF"; 

Возврат ИмяФайла;

КонецФункции

// Проверяет наличие достаточных данных для начало выполнения процесса поиска информации в базе.
Функция ИмеютсяНеобходимыхДанныхДляЗагрузки()

ТекстОшибки = "";

Если НЕ ЗначениеЗаполнено(Период) Тогда
ТекстОшибки = "Не заполнено значение поля ""Период""!";
КонецЕсли;

Если НЕ ЗначениеЗаполнено(Организация) Тогда
ТекстОшибки = ?(Не ПустаяСтрока(ТекстОшибки), ТекстОшибки + Символы.ПС, ТекстОшибки) + "Не заполнено значение поля ""Организация""!";
КонецЕсли;

Если НЕ ЗначениеЗаполнено(ИмяКаталогаВыгрузки) Тогда
ТекстОшибки = ?(Не ПустаяСтрока(ТекстОшибки), ТекстОшибки + Символы.ПС, ТекстОшибки) + "Не указана папка для сохранения поля ""Каталог выгрузки""!";
КонецЕсли;

Если НЕ ЗначениеЗаполнено(КодОрганизации) Тогда
ТекстОшибки = ?(Не ПустаяСтрока(ТекстОшибки), ТекстОшибки + Символы.ПС, ТекстОшибки) + "Не заполнено значение поля ""Код организации""!";
КонецЕсли;

//Для Каждого ТекУслуга Из МосковскаяОбластьУКСозвездие_СоответствиеУслуг Цикл
// ИмеетсяНесоответствиеУслуг = Ложь;
// Если НЕ ЗначениеЗаполнено(ТекУслуга.УслугаВБазе) Тогда
// Если НЕ ИмеетсяНесоответствиеУслуг Тогда
// ТекстОшибки = ?(Не ПустаяСтрока(ТекстОшибки), ТекстОшибки + Символы.ПС, ТекстОшибки) + "Форма настройки выгрузки, вкладка ""Соответствие услуг""!";
// ИмеетсяНесоответствиеУслуг = Истина;
// КонецЕсли;
// ТекстОшибки = ТекстОшибки + Символы.ПС + "В строке №" + ТекУслуга.НомерСтроки + " для услуги в ОСЗН """ + ТекУслуга.УслугаВОСЗН + """ не указана соответствующая услуга в базе!";
// КонецЕсли;
//КонецЦикла;
//
//Для Каждого ТекВБ Из МосковскаяОбластьУКСозвездие_СоответствиеВидовБлагоустройств Цикл
// ИмеетсяНесоответствиеВБ = Ложь;
// Если НЕ ЗначениеЗаполнено(ТекВБ.ВидБлагоустройстваВОСЗН) Тогда
// Если НЕ ИмеетсяНесоответствиеУслуг Тогда
// ТекстОшибки = ?(Не ПустаяСтрока(ТекстОшибки), ТекстОшибки + Символы.ПС, ТекстОшибки) + "Форма настройки выгрузки, вкладка ""Соответствие видов благоустройств""!";
// ИмеетсяНесоответствиеВБ = Истина;
// КонецЕсли;
// ТекстОшибки = ТекстОшибки + Символы.ПС + "В строке №" + ТекВБ.НомерСтроки + " для вида благоустройства в ОСЗН " + ТекВБ.ВидБлагоустройстваВОСЗН + " не указан соответствующий вид благоустройства в базе!";
// КонецЕсли;
//КонецЦикла;

Возврат ТекстОшибки;
КонецФункции // ИмеютсяНеобходимыхДанныхДляЗагрузки()

// Процедура заполняет таблицу начислений
Процедура ЗаполнитьТаблицуНачислений()

МосковскаяОбластьУКСозвездие_ТаблицаВыгрузки.Очистить();

// Проверяем установлен ли флаг на выводе лицевых счетов, в которых проживают льготники.
Если ВыводитьЛьготников Тогда
СведенияОЛицевыхСчетах = ПолучитьТаблицуОткрытыхЛицевыхСчетовЛьготников();
Иначе
СведенияОЛицевыхСчетах = ПолучитьТаблицуОткрытыхЛицевыхСчетов();
КонецЕсли;

ТаблицаЛС = СведенияОЛицевыхСчетах.Скопировать(,"ЛицевойСчет, Помещение, КоличествоЛСВПомещении");

СтруктураВидовУслугДляПоиска = ПодготовитьСтруктуруСТаблицамиВидовУслуг();
ТаблицаВБДляПоиска           = ПодготовитьСтруктуруСТаблицамиВБ();

ДеревоНачисленийДляСписка1 = ПолучитьДеревоНачисленийДляСписка1(ТаблицаЛС, СтруктураВидовУслугДляПоиска.ТаблицаВидовУслугДляСписка1);
ДеревоНачисленийДляСписка2 = ПолучитьДеревоНачисленийДляСписка2(ТаблицаЛС, СтруктураВидовУслугДляПоиска.ТаблицаВидовУслугДляСписка2);
ДеревоНачисленийДляСписка3 = ПолучитьДеревоНачисленийДляСписка3(ТаблицаЛС, СтруктураВидовУслугДляПоиска.ТаблицаВидовУслугДляСписка3);

// Заполняем таблицу с состояниями видов благоустройств в помещениях, в которых открыты лицевые счета.
СведенияОБлагоустройствах = ПолучитьСведенияОБлагоустройствахЛицевыхСчетов(ТаблицаЛС, ТаблицаВБДляПоиска);

СведенияОПериодыПроживанияГраждан = ПолучитьСведенияОПрисутствияхГраждан(ТаблицаЛС);

Если СведенияОЛицевыхСчетах.Количество() > 0 Тогда

ЗаполненоДеревоНачисленийДляСписка1 = ?(ДеревоНачисленийДляСписка1.Строки.Количество() > 0, Истина, Ложь);
ЗаполненоДеревоНачисленийДляСписка2 = ?(ДеревоНачисленийДляСписка2.Строки.Количество() > 0, Истина, Ложь);
ЗаполненоДеревоНачисленийДляСписка3 = ?(ДеревоНачисленийДляСписка3.Строки.Количество() > 0, Истина, Ложь);

ЗаполненыСведенияОБлагоустройствах = ?(СведенияОБлагоустройствах.Количество() > 0, Истина, Ложь);

ЗаполненыСведенияОПроживающих = ?(СведенияОПериодыПроживанияГраждан.Количество() > 0, Истина, Ложь);

ЗаКакойГод   = Формат(Период, "ДФ = yyyy");
ЗаКакойМесяц = Формат(Период, "ДФ = MM");

ДатаАктуальности = КонецМесяца(Период);
ТекЗдание = "";
ПервыйПроход = Истина;
ОтборЛС = Новый Структура;
Для Каждого ТекЛС Из СведенияОЛицевыхСчетах Цикл

ЛицевойСчет = ТекЛС.ЛицевойСчет;

НоваяСтрокаЛС          = МосковскаяОбластьУКСозвездие_ТаблицаВыгрузки.Добавить();
Если НЕ ВыводЛицевыхСчетов Тогда
НоваяСтрокаЛС.NumLs = ТекЛС.ЛицевойСчет;
Иначе
НоваяСтрокаЛС.NumLs = ТекЛС.ЛицевойСчетИдентификатор;
КонецЕсли;

/// Тузова
НоваяСтрокаЛС.Kod_Org  = СокрЛП(КодОрганизации);
НоваяСтрокаЛС.Nazv_Org = СокрЛП(Организация.Наименование);
НоваяСтрокаЛС.God      = ЗаКакойГод;
НоваяСтрокаЛС.Mes      = ЗаКакойМесяц;
НоваяСтрокаЛС.Sob      = ТекЛС.ЖилаяПлощадь;




НоваяСтрокаЛС.TipZF    = ТекЛС.ВидСобственности;
НоваяСтрокаЛС.KolChLs  = ТекЛС.КоличествоЗарегистрированных;
НоваяСтрокаЛС.FIO      = СокрЛП(ТекЛС.ОтветственныйВладелец.Наименование);
НоваяСтрокаЛС.Dolg     = ТекЛС.НачальноеСальдо;
Здание = ТекЛС.Помещение.Владелец;
Если ПервыйПроход Тогда
СтрокаАдреса        = СформироватьАдресДляВывода(ТекЛС);
НоваяСтрокаЛС.Adres = СтрокаАдреса + ?(НЕ ПустаяСтрока(СтрокаАдреса), ", ", "") + СокрЛП(ТекЛС.Помещение.Наименование);
ТекЗдание = Здание;
ПервыйПроход = Ложь;
ИначеЕсли ТекЗдание = Здание Тогда
НоваяСтрокаЛС.Adres = СтрокаАдреса + ?(НЕ ПустаяСтрока(СтрокаАдреса), ", ", "") + СокрЛП(ТекЛС.Помещение.Наименование);
ИначеЕсли НЕ ТекЗдание = ТекЛС.Помещение.Владелец Тогда
СтрокаАдреса        = СформироватьАдресДляВывода(ТекЛС);
НоваяСтрокаЛС.Adres = СтрокаАдреса + ?(НЕ ПустаяСтрока(СтрокаАдреса), ", ", "") + СокрЛП(ТекЛС.Помещение.Наименование);
ТекЗдание = Здание;
КонецЕсли;

ОтборЛС.Вставить("ЛицевойСчет", ЛицевойСчет);
Если ЗаполненоДеревоНачисленийДляСписка1 Тогда
НайденнаяСтрокаПоЛС = ДеревоНачисленийДляСписка1.Строки.Найти(ЛицевойСчет, "ЛицевойСчет");
Если НЕ НайденнаяСтрокаПоЛС = Неопределено Тогда
Для Каждого ТекЛС1 Из НайденнаяСтрокаПоЛС.Строки Цикл
Начислено       = 0;
Перерасчет      = 0;

ПервыйПроход = Истина;

ТарифДляВывода = 0;

Для Каждого ВидУслугиВОСЗН Из ТекЛС1.Строки Цикл
ИмелиМестоПерерасчеты = ВидУслугиВОСЗН.ИмелиМестоПерерасчеты;
ИмелиМестоНачисления  = ВидУслугиВОСЗН.ИмелиМестоНачисления;
ПризнакНачисления  = Ложь;
ПризнакПерерасчета = Ложь;
ТарифУслуги = 0;
ТарифПоУслуге   = 0;
УслугаДляТарифа = "";
Для Каждого ВидУслугиВБазе Из ВидУслугиВОСЗН.Строки Цикл
Для Каждого Услуга Из ВидУслугиВБазе.Строки Цикл
Если ПервыйПроход Тогда
Если Услуга.ВидУслугиВОСЗН = "Оплата жилья в расчете на 1 кв. м. общей площади" Тогда
Суффикс = "TO";
ИначеЕсли Услуга.ВидУслугиВОСЗН = "Оплата жилья в расчете на 1 проживающего человека" Тогда
Суффикс = "TO2";
ИначеЕсли Услуга.ВидУслугиВОСЗН = "Найм / капитальный ремонт" Тогда
Суффикс = "NKR";
ИначеЕсли Услуга.ВидУслугиВОСЗН = "Отопление" Тогда
Суффикс = "Otop";
КонецЕсли;
ПервыйПроход = Ложь;
КонецЕсли;
Если ЗначениеЗаполнено(Услуга.Услуга) Тогда
Если Услуга.ВидНачисления = Перечисления.УПЖКХ_ВидыНачислений.Начисление Тогда
Начислено = Начислено + Услуга.Начислено;

Если НЕ ПризнакНачисления Тогда
ТарифПоУслуге        = Услуга.Тариф;
ПризнакНачисления    = Истина;
КонецЕсли;

ИначеЕсли Услуга.ВидНачисления = Перечисления.УПЖКХ_ВидыНачислений.ПерерасчетНачисления Тогда

Перерасчет = Перерасчет + Услуга.Начислено;

Если НЕ ИмелиМестоНачисления И НЕ ПризнакПерерасчета Тогда
УслугаДляТарифа      = Услуга.Услуга;
ПризнакПерерасчета   = Истина;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЦикла;

Если ЗначениеЗаполнено(ТарифПоУслуге) Тогда
ТарифУслуги = ТарифПоУслуге;
ИначеЕсли ВидУслугиВБазе.Строки.Количество() > 0 Тогда
Если ЗначениеЗаполнено(УслугаДляТарифа) Тогда
ТарифУслуги = ПолучитьТарифПоЛицевомуСчету(ДатаАктуальности, Организация, УслугаДляТарифа, ЛицевойСчет);
Иначе
НайденнаяСтрока1 = ТекЛС1.Строки.Найти(ВидУслугиВБазе.ВидУслугиВБазе, "ВидУслугиВБазе");

Если НЕ НайденнаяСтрока1 = Неопределено Тогда
Если НайденнаяСтрока1.ИмеетсяНазначеннаяУслуга Тогда
Если НайденнаяСтрока1.ИмелиМестоНачисления ИЛИ НайденнаяСтрока1.ИмелиМестоПерерасчеты Тогда
Усл1 = НайденнаяСтрока1.Строки[0].Услуга;
Если ЗначениеЗаполнено(Усл1) Тогда
ТарифУслуги = ПолучитьТарифПоЛицевомуСчету(ДатаАктуальности, Организация, Усл1, ЛицевойСчет);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
ТарифДляВывода = ТарифДляВывода + ТарифУслуги;
КонецЦикла;
НоваяСтрокаЛС["Tar" + Суффикс] = ТарифДляВывода;
НоваяСтрокаЛС["Nac" + Суффикс] = Начислено + Перерасчет;
КонецЦикла;
КонецЕсли;
КонецЕсли;

Если ЗаполненоДеревоНачисленийДляСписка2 Тогда
НайденнаяСтрокаПоЛС = ДеревоНачисленийДляСписка2.Строки.Найти(ЛицевойСчет, "ЛицевойСчет");
Если НЕ НайденнаяСтрокаПоЛС = Неопределено Тогда
Для Каждого ТекЛС1 Из НайденнаяСтрокаПоЛС.Строки Цикл

Начислено     = 0;
Перерасчет    = 0;
ТарифПоУслуге = 0;

УслугаДляТарифа = "";

НаличиеСчетчика = Ложь;

НормативПотребления  = "";
РасширеннаяНастройка = Ложь;

ПервыйПроход = Истина;
ПризнакНачисления  = Ложь;
ПризнакПерерасчета = Ложь;

Для Каждого ВидУслугиВОСЗН Из ТекЛС1.Строки Цикл
ИмелиМестоПерерасчеты = ВидУслугиВОСЗН.ИмелиМестоПерерасчеты;
ИмелиМестоНачисления  = ВидУслугиВОСЗН.ИмелиМестоНачисления;
Для Каждого ВидУслугиВБазе Из ВидУслугиВОСЗН.Строки Цикл
Для Каждого Услуга Из ВидУслугиВБазе.Строки Цикл
Если ПервыйПроход Тогда
Если Услуга.ВидУслугиВОСЗН = "Холодное водоснабжение" Тогда
Суффикс = "HV";
ИначеЕсли Услуга.ВидУслугиВОСЗН = "Горячее водоснабжение" Тогда
Суффикс = "GV";
ИначеЕсли Услуга.ВидУслугиВОСЗН = "Водоотведение" Тогда
Суффикс = "Stoki";
ИначеЕсли Услуга.ВидУслугиВОСЗН = "Газовое снабжение" Тогда
Суффикс = "Gaz";
КонецЕсли;
ПервыйПроход = Ложь;
КонецЕсли;
Если ЗначениеЗаполнено(Услуга.Услуга) Тогда
Если Услуга.ВидНачисления = Перечисления.УПЖКХ_ВидыНачислений.Начисление Тогда
Начислено = Начислено + Услуга.Начислено;

Если НЕ ПризнакНачисления Тогда
ТарифПоУслуге        = Услуга.Тариф;
НормативПотребления  = Услуга.НормаПотребления;
РасширеннаяНастройка = Услуга.РасширеннаяНастройка;
ПризнакНачисления    = Истина;
КонецЕсли;

ИначеЕсли Услуга.ВидНачисления = Перечисления.УПЖКХ_ВидыНачислений.ПерерасчетНачисления Тогда

Перерасчет = Перерасчет + Услуга.Начислено;

Если НЕ ИмелиМестоНачисления И НЕ ПризнакПерерасчета Тогда
УслугаДляТарифа      = Услуга.Услуга;
НормативПотребления  = Услуга.НормаПотребления;
РасширеннаяНастройка = Услуга.РасширеннаяНастройка;
ПризнакПерерасчета   = Истина;
КонецЕсли;

КонецЕсли;

Если Услуга.НаличиеСчетчика Тогда
НаличиеСчетчика = Истина;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецЦикла;

Если ЗначениеЗаполнено(ТарифПоУслуге) И (ЗначениеЗаполнено(Начислено) ИЛИ ЗначениеЗаполнено(Перерасчет)) Тогда
НоваяСтрокаЛС["Tar" + Суффикс] = ТарифПоУслуге;
ИначеЕсли ВидУслугиВБазе.Строки.Количество() > 0 Тогда
Если ЗначениеЗаполнено(УслугаДляТарифа) Тогда
НоваяСтрокаЛС["Tar" + Суффикс] = ПолучитьТарифПоЛицевомуСчету(ДатаАктуальности, Организация, УслугаДляТарифа, ЛицевойСчет);
Иначе
НайденнаяСтрока1 = ТекЛС1.Строки.Найти(Истина, "ИмеетсяНазначеннаяУслуга");

Если НЕ НайденнаяСтрока1 = Неопределено Тогда
Если НайденнаяСтрока1.ИмелиМестоНачисления ИЛИ НайденнаяСтрока1.ИмелиМестоПерерасчеты Тогда
Усл1 = НайденнаяСтрока1.Строки[0].Услуга;
Если ЗначениеЗаполнено(Усл1) Тогда
НоваяСтрокаЛС["Tar" + Суффикс] = ПолучитьТарифПоЛицевомуСчету(ДатаАктуальности, Организация, Усл1, ЛицевойСчет);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;

НоваяСтрокаЛС["Nac" + Суффикс] = Начислено + Перерасчет;

НоваяСтрокаЛС["Sch" + Суффикс] = НаличиеСчетчика;

Если НаличиеСчетчика Тогда
Если ЗначениеЗаполнено(НормативПотребления) Тогда
Если РасширеннаяНастройка Тогда
НоваяСтрокаЛС["Norm" + Суффикс] = НормативПотребления.Размер;
Иначе
НоваяСтрокаЛС["Norm" + Суффикс] = ПолучитьРазмерНормыПотребления(ЛицевойСчет, ДатаАктуальности, НормативПотребления, Организация);
КонецЕсли;
ИначеЕсли ВидУслугиВБазе.Строки.Количество() > 0 Тогда
Если НЕ ИмелиМестоНачисления И НЕ ИмелиМестоПерерасчеты Тогда
НайденнаяСтрока1 = ТекЛС1.Строки.Найти(Истина, "ИмеетсяНазначеннаяУслуга");

Если НЕ НайденнаяСтрока1 = Неопределено Тогда
Усл1 = НайденнаяСтрока1.Строки[0].Услуга;
Если ЗначениеЗаполнено(Усл1) Тогда
НормативПотребления    = ПолучитьНормуПотребления(ЛицевойСчет, Усл1, ДатаАктуальности);
Если НормативПотребления.ВариантНастройки = Перечисления.КВП_ВариантыНастроекРасчетаНормативовПотребления.Расширенный Тогда
НоваяСтрокаЛС["Norm" + Суффикс] = ПолучитьРазмерНормыПотребления(ЛицевойСчет, ДатаАктуальности, НормативПотребления, Организация);
Иначе
НоваяСтрокаЛС["Norm" + Суффикс] = НормативПотребления.Размер;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;

КонецЦикла;
КонецЕсли;
КонецЕсли;

Если ЗаполненоДеревоНачисленийДляСписка3 Тогда
НайденнаяСтрокаПоЛС = ДеревоНачисленийДляСписка3.Строки.Найти(ЛицевойСчет, "ЛицевойСчет");

Если НЕ НайденнаяСтрокаПоЛС = Неопределено Тогда

Для Каждого ТекЛС1 Из НайденнаяСтрокаПоЛС.Строки Цикл

Начислено     = 0;
Перерасчет    = 0;
ТарифПоУслуге = 0;

УслугаДляТарифа = "";

НаличиеСчетчика = Ложь;
КолвоСчВПомещении             = 0;
КоличествоСчетчиковВПомещении = 0;

НормативПотребления  = "";
РасширеннаяНастройка = Ложь;

ПервыйПроход = Истина;
ПризнакНачисления  = Ложь;
ПризнакПерерасчета = Ложь;
НазначеноНа = 0;
Для Каждого ВидУслугиВОСЗН Из ТекЛС1.Строки Цикл
ИмелиМестоПерерасчеты = ВидУслугиВОСЗН.ИмелиМестоПерерасчеты;
ИмелиМестоНачисления  = ВидУслугиВОСЗН.ИмелиМестоНачисления;
Для Каждого ВидУслугиВБазе Из ВидУслугиВОСЗН.Строки Цикл
Для Каждого Услуга Из ВидУслугиВБазе.Строки Цикл
Если ПервыйПроход Тогда
Если Услуга.ВидУслугиВОСЗН = "Электрическая энергия" Тогда
Суффикс = "Ee";
КонецЕсли;
КонецЕсли;
Если ЗначениеЗаполнено(Услуга.Услуга) Тогда
Если Услуга.ВидНачисления = Перечисления.УПЖКХ_ВидыНачислений.Начисление Тогда

Начислено = Начислено + Услуга.Начислено;

Если НЕ ПризнакНачисления И ЗначениеЗаполнено(Услуга.НормаПотребления) Тогда
ТарифПоУслуге        = Услуга.Тариф;
НормативПотребления  = Услуга.НормаПотребления;
РасширеннаяНастройка = Услуга.РасширеннаяНастройка;
ПризнакНачисления    = Ложь;
КонецЕсли;

ИначеЕсли Услуга.ВидНачисления = Перечисления.УПЖКХ_ВидыНачислений.ПерерасчетНачисления Тогда

Перерасчет = Перерасчет + Услуга.Начислено;

Если НЕ ИмелиМестоНачисления И НЕ ПризнакПерерасчета И ЗначениеЗаполнено(Услуга.НормаПотребления) Тогда
УслугаДляТарифа      = Услуга.Услуга;
НормативПотребления  = Услуга.НормаПотребления;
РасширеннаяНастройка = Услуга.РасширеннаяНастройка;
ПризнакПерерасчета   = Истина;
КонецЕсли;

КонецЕсли;

Если ЗначениеЗаполнено(Услуга.Услуга) Тогда
Если Услуга.Услуга.СпособРасчета = Перечисления.КВП_СпособыРасчета.ПоПоказаниямСчетчика
ИЛИ Услуга.Услуга.СпособРасчета = Перечисления.КВП_СпособыРасчета.ПоПоказаниямСчетчикаИНорме Тогда
Если Услуга.НазначеноНа > НазначеноНа Тогда
НазначеноНа = Услуга.НазначеноНа;
КонецЕсли;

Если Услуга.КоличествоСчетчиковВПомещении > КоличествоСчетчиковВПомещении Тогда
КоличествоСчетчиковВПомещении = Услуга.КоличествоСчетчиковВПомещении;
КонецЕсли;
КонецЕсли;
КонецЕсли;

Если Услуга.КоличествоСчетчиковВЛС > 0 Тогда
НаличиеСчетчика = Истина;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецЦикла;

Если ЗначениеЗаполнено(ТарифПоУслуге) И (ЗначениеЗаполнено(Начислено) ИЛИ ЗначениеЗаполнено(Перерасчет)) Тогда
НоваяСтрокаЛС["Tar" + Суффикс] = ТарифПоУслуге;
ИначеЕсли ВидУслугиВБазе.Строки.Количество() > 0 Тогда
Если ЗначениеЗаполнено(УслугаДляТарифа) Тогда
НоваяСтрокаЛС["Tar" + Суффикс] = ПолучитьТарифПоЛицевомуСчету(ДатаАктуальности, Организация, УслугаДляТарифа, ЛицевойСчет);
Иначе
НайденнаяСтрока1 = ТекЛС1.Строки.Найти(Истина, "ИмеетсяНазначеннаяУслуга");

Если НЕ НайденнаяСтрока1 = Неопределено Тогда
Если НайденнаяСтрока1.ИмелиМестоНачисления ИЛИ НайденнаяСтрока1.ИмелиМестоПерерасчеты Тогда
Усл1 = НайденнаяСтрока1.Строки[0].Услуга;
Если ЗначениеЗаполнено(Усл1) Тогда
НоваяСтрокаЛС["Tar" + Суффикс] = ПолучитьТарифПоЛицевомуСчету(ДатаАктуальности, Организация, Усл1, ЛицевойСчет);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;

НоваяСтрокаЛС["Nac" + Суффикс] = Начислено + Перерасчет;

Если ТекЛС.КоличествоЛСВПомещении = 1 Тогда
Если НаличиеСчетчика Тогда
НоваяСтрокаЛС["KolFml"] = 1;
КонецЕсли;
ИначеЕсли ТекЛС.КоличествоЛСВПомещении > 1 Тогда
Если КоличествоСчетчиковВПомещении > 0 Тогда
НоваяСтрокаЛС["KolFml"] = НазначеноНа;
Иначе
НоваяСтрокаЛС["KolFml"] = 0;
КонецЕсли;
КонецЕсли;

Если ЗначениеЗаполнено(НормативПотребления) Тогда
Если РасширеннаяНастройка Тогда
НоваяСтрокаЛС["Norm" + Суффикс] = НормативПотребления.Размер;
Иначе
НоваяСтрокаЛС["Norm" + Суффикс] = ПолучитьРазмерНормыПотребления(ЛицевойСчет, ДатаАктуальности, НормативПотребления, Организация);
КонецЕсли;
ИначеЕсли ВидУслугиВБазе.Строки.Количество() > 0 Тогда
Если НЕ ИмелиМестоНачисления И НЕ ИмелиМестоПерерасчеты Тогда
НайденнаяСтрока1 = ТекЛС1.Строки.Найти(Истина, "ИмеетсяНазначеннаяУслуга");

Если НЕ НайденнаяСтрока1 = Неопределено Тогда
Усл1 = НайденнаяСтрока1.Строки[0].Услуга;
Если ЗначениеЗаполнено(Усл1) Тогда
НормативПотребления    = ПолучитьНормуПотребления(ЛицевойСчет, Усл1, ДатаАктуальности);
Если НормативПотребления.ВариантНастройки = Перечисления.КВП_ВариантыНастроекРасчетаНормативовПотребления.Расширенный Тогда
НоваяСтрокаЛС["Norm" + Суффикс] = ПолучитьРазмерНормыПотребления(ЛицевойСчет, ДатаАктуальности, НормативПотребления, Организация);
Иначе
НоваяСтрокаЛС["Norm" + Суффикс] = НормативПотребления.Размер;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;

КонецЦикла;

КонецЕсли;

КонецЕсли;

Если ЗаполненыСведенияОБлагоустройствах Тогда
НайденныеСведенияОБлагоустройствахЛС = СведенияОБлагоустройствах.НайтиСтроки(ОтборЛС);
Для Каждого ТекВБ Из НайденныеСведенияОБлагоустройствахЛС Цикл
Если ЗначениеЗаполнено(ТекВБ.ВидБлагоустройстваВБазе) Тогда
Если ТекВБ.ВидБлагоустройстваВОСЗН = "Плита" Тогда
Суффикс = "KodPlita";
КонецЕсли;
НоваяСтрокаЛС[Суффикс] = ТекВБ.ЗначениеБлагоустройства;
КонецЕсли;
КонецЦикла;
КонецЕсли;

Если ЗаполненыСведенияОПроживающих Тогда
НайденныеСведенияОПроживающихЛС = СведенияОПериодыПроживанияГраждан.НайтиСтроки(ОтборЛС);
Для Каждого ТекСеведенияОЛС Из НайденныеСведенияОПроживающихЛС Цикл
НоваяСтрокаЛС.KNotKU   = ТекСеведенияОЛС.КолвоОтсутствующих;
КонецЦикла;
КонецЕсли;

ОтборЛС.Очистить();
КонецЦикла;
КонецЕсли;

ЭлементыФормы.КП_ТаблицыНачислений.Кнопки.Выгрузить.Доступность = Истина;

КонецПроцедуры // ЗаполнитьТаблицуНачислений()

Последний раз редактировалось: MuI_I_Ika; 22 Окт 2014, 15:00


Теги:
 

Поле не найдено"ЗаказПокупателя.Услуги.Ссылка"<<?>>ЗаказПокупателя.Услуги.Ссылка

Автор romanprogrammistРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 6929
Последний ответ 05 Дек 2013, 00:01
от romanprogrammist
Вывод информации: если поле не заполнено, то вывод иной информации. Новичок

Автор kiksiРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 311
Последний ответ 10 Окт 2017, 12:33
от kiksi
Поле "ВаловаяПрибыль" не может быть использовано в группировке "Store" СКД

Автор virtusРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 6401
Последний ответ 10 Июл 2014, 15:16
от virtus
Не заполняется поле "Цена" при формировании документа "Пересчет товаров"

Автор InnakechaРаздел Пользователям "1С - Предприятие 8"

Ответов: 4
Просмотров: 1080
Последний ответ 29 Дек 2016, 09:54
от Innakecha
Поле "Профессия"!!!

Автор MytiРаздел Предложения по работе форума

Ответов: 5
Просмотров: 5199
Последний ответ 23 Ноя 2010, 23:48
от progmikon

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
179 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
39 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 316
  • Точка Скрытых: 0
  • Точка Пользователей: 2
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal