ЗиК мед выборка адреса

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. mumoza 05.06.12 06:41 Сейчас в теме
не подскажете как сделать в подобном запросе выборку(если адрес проживания = адресу прописки то вывести только проживание, в противном случае вывести оба адреса в разные строки макета ( для документа заявление на открытие лицевого счета (для сбербанка))

Функция Печать() Экспорт

   ТабДокумент = Новый ТабличныйДокумент;
   Макет = ПолучитьМакет("Макет");
   //ОбластьМакетаШапка = Макет.ПолучитьОбласть("Шапка"); // Шапка документа.
   //ОбластьМакетаШапка = Макет.ПолучитьОбласть("СтрокаФизЛица"); ///ФИО в шапке
   ОбластьМакетаШапка = Макет.ПолучитьОбласть("Лат"); /// Имя латинскими в шапке
   ОбластьМакетаЛичныеДанные = Макет.ПолучитьОбласть("ЛичныеДанные"); /// область данных о физ лице
   ОбластьМакетаПодвал = Макет.ПолучитьОбласть("Подвал"); // макет контактной информации и далее
   Запрос = Новый Запрос;

      Запрос.Текст = 
      "ВЫБРАТЬ
      |   ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.Наименование, "" "") КАК Наименование,
      |   ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.ДатаРождения, "" "") КАК ДатаРождения,
      |   ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.МестоРождения, "" "") КАК МестоРождения,
      |   ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.ИНН, 0) КАК ИНН,
      |   ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.Код, 0) КАК Код,
      |   ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.КодИМНС, 0) КАК КодИМНС,
      |   ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.Пол, "" "") КАК Пол,
      |   ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.СтраховойНомерПФР, 0) КАК СтраховойНомерПФР,
      |   ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументВид.Представление, "" "") КАК ДокументВид,
      |   ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументДатаВыдачи, "" "") КАК ДокументДатаВыдачи,
      |   ЕСТЬNULL(ВЫРАЗИТЬ(ПаспортныеДанныеФизЛицСрезПоследних.ДокументКемВыдан КАК СТРОКА(300)), 0) КАК ДокументКемВыдан,
      |   ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументКодПодразделения, 0) КАК ДокументКодПодразделения,
      |   ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументНомер, 0) КАК ДокументНомер,
      |   ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументСерия, 0) КАК ДокументСерия,
      |   ЕСТЬNULL(КонтактнаяИнформация.Представление, "" "") КАК Представление,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле1, 0) КАК Индекс,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле2, "" "") КАК Область,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле3, "" "") КАК Район,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле4, "" "") КАК Город,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле5, "" "") КАК НасПункт,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле6, "" "") КАК Улица,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле7, 0) КАК НомерДома,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле8, 0) КАК НомерКорпуса,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле9, 0) КАК НомерКвартиры,
      |   ЕСТЬNULL(КонтактнаяИнформация.Поле10, "" "") КАК Поле10,
      |   ЕСТЬNULL(КонтактнаяИнформация.ТипДома, "" "") КАК ТипДома,
      |   ЕСТЬNULL(КонтактнаяИнформация.ТипКорпуса, "" "") КАК ТипКорпуса,
      |   ЕСТЬNULL(КонтактнаяИнформация.ТипКвартиры, "" "") КАК ТипКвартиры,
      |   ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия, "" "") КАК Фамилия,
      |   ЕСТЬNULL(ФИОФизЛицСрезПоследних.Имя, "" "") КАК Имя,
      |   КонтактнаяИнформация.Вид КАК Вид,
      |   КонтактнаяИнформация.Вид.Наименование КАК ВидНаименование,
      |   ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо
      |ИЗ
      |   Документ.ЗаявкаНаОткрытиеСчетов.РаботникиОрганизации КАК ЗаявкаНаОткрытиеСчетовРаботникиОрганизации
      |      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
      |      ПО ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо = КонтактнаяИнформация.Объект
      |      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних КАК ФИОФизЛицСрезПоследних
      |      ПО ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо = ФИОФизЛицСрезПоследних.ФизЛицо
      |      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПаспортныеДанныеФизЛиц.СрезПоследних КАК ПаспортныеДанныеФизЛицСрезПоследних
      |      ПО ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо = ПаспортныеДанныеФизЛицСрезПоследних.ФизЛицо
      |ГДЕ
      |   ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.Ссылка = &Ссылка";
      //|    И КонтактнаяИнформация.Тип = &ТипАдреса
      //|    И КонтактнаяИнформация.Вид = &ВидАдреса";

      Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);
      Запрос.УстановитьПараметр("ФизЛицо",СсылкаНаОбъект);
      Запрос.УстановитьПараметр("ДокументСерия", СсылкаНаОбъект);
                Запрос.УстановитьПараметр("ДокументНомер", СсылкаНаОбъект);
                Запрос.УстановитьПараметр("ДокументДатаВыдачи", СсылкаНаОбъект);
                Запрос.УстановитьПараметр("ДокументКемВыдан", СсылкаНаОбъект);
      Запрос.УстановитьПараметр("Представление", СсылкаНаОбъект);
      Запрос.УстановитьПараметр("ТипАдреса", СсылкаНаОбъект);
      Запрос.УстановитьПараметр("ВидАдреса", СсылкаНаОбъект);
           Результат = Запрос.Выполнить(); 
      ВыборкаФизЛиц = Результат.Выбрать();
      
      ОбластьМакетаШапка = Макет.ПолучитьОбласть("Шапка");
      ОбластьМакетаШапка = Макет.ПолучитьОбласть("СтрокаФизЛица");
      ТекФизЛицо = "";
      Пока ВыборкаФизЛиц.Следующий() Цикл
         Если ТекФизЛицо <> ВыборкаФизЛиц.Наименование Тогда
      ОбластьМакетаЛичныеДанные.Параметры.Заполнить(ВыборкаФизЛиц);
      ОбластьМакетаШапка.Параметры.Физ = ВыборкаФизЛиц.Наименование;
      ОбластьМакетаЛичныеДанные.Параметры.МестоРожденияРаботника = РегламентированнаяОтчетность.ПредставлениеМестаРождения(ВыборкаФизЛиц.МестоРождения);
      ОбластьМакетаЛичныеДанные.Параметры.ДатаРождения = Формат(ВыборкаФизЛиц.ДатаРождения, "ДФ=dd.MM.yyyy");
        ОбластьМакетаЛичныеДанные.Параметры.ПропАдрес =  ВыборкаФизЛиц.Город +", "+ ВыборкаФизлиц.Район +" "+ВыборкаФизлиц.НасПункт +" "+ ВыборкаФизЛиц.Улица +", дом "+ ВыборкаФизЛиц.ТипДома +"№ "+ ВыборкаФизЛиц.НомерДома +", "+ ВыборкаФизЛиц.НомерКорпуса +" кв"+ ВыборкаФизЛиц.ТипКвартиры +" "+ ВыборкаФизЛиц.НомерКвартиры;
      ОбластьМакетаЛичныеДанные.Параметры.ПрожАдрес =  ВыборкаФизЛиц.Город +", "+ ВыборкаФизлиц.Район +" "+ВыборкаФизлиц.НасПункт +" "+ ВыборкаФизЛиц.Улица +", дом "+ ВыборкаФизЛиц.ТипДома +"№ "+ ВыборкаФизЛиц.НомерДома +", "+ ВыборкаФизЛиц.НомерКорпуса +" кв"+ ВыборкаФизЛиц.ТипКвартиры +" "+ ВыборкаФизЛиц.НомерКвартиры;
      ОбластьМакетаЛичныеДанные.Параметры.ПрожИндекс = ВыборкаФизЛиц.Индекс;
      ОбластьМакетаЛичныеДанные.Параметры.ПрожОбласть = ВыборкаФизЛиц.Область;
      ОбластьМакетаЛичныеДанные.Параметры.ПропИндекс = ВыборкаФизЛиц.Индекс;
      ОбластьМакетаЛичныеДанные.Параметры.ПропОбласть = ВыборкаФизЛиц.Область;
      ОбластьМакетаЛичныеДанные.Параметры.Серия =  ВыборкаФизЛиц.ДокументСерия +" "+  ВыборкаФизЛиц.ДокументНомер;
      ОбластьМакетаЛичныеДанные.Параметры.ДатаВыдачи = Формат(ВыборкаФизЛиц.ДокументДатаВыдачи, "ДФ=dd.MM.yyyy");
      ОбластьМакетаЛичныеДанные.Параметры.КемВыдан = ВыборкаФизЛиц.ДокументКемВыдан +" "+ ВыборкаФизЛиц.ДокументКодПодразделения;
      
      ЛАТ = СокрЛП(ВыборкаФизлиц.Имя +" "+ВыборкаФизлиц.Фамилия);
      ЛАТ = ПолучитьСтрокуНаЛатинском(ВыборкаФизлиц.Имя +" "+ВыборкаФизлиц.Фамилия);
      
      Для сч = 1 по мин(СтрДлина(ЛАТ),19) Цикл
      ОбластьМакетаШапка.Параметры["ЛАТ"+сч]=Сред(ЛАТ,сч,1);
      КонецЦикла;
      //// Конец
      ///// Разложение ИНН по символьно Начало
      ИНН = СокрЛП(ВыборкаФизЛиц.ИНН);
      Для сч = 1 по СтрДлина(ИНН) Цикл
         ОбластьМакетаЛичныеДанные.Параметры["ИНН"+сч]=Сред(ИНН,сч,1);
      КонецЦикла;

      ТабДокумент.Вывести(ОбластьМакетаШапка);
      ТабДокумент.Вывести(ОбластьМакетаЛичныеДанные);
      ТабДокумент.Вывести(ОбластьМакетаПодвал);
      ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();

      КонецЕсли;
      
   ТекФизЛицо = ВыборкаФизЛиц.Наименование;
КонецЦикла;
      

      Возврат ТабДокумент;

         
   
   КонецФункции // Печать
Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. mumoza 05.06.12 13:47 Сейчас в теме
изменил запрос и дописал вывод адресов...выводится все нормально до тех пор пока не встретит физ лицо с различными адресами... после него во всех последующих выводит один и тотже адрес(прописки) помогие разобраться где ево клинануло.... или может как очистит его

Функция Печать() Экспорт

	
   ТабДокумент = Новый ТабличныйДокумент;
   Макет = ПолучитьМакет("Макет");
   //ОбластьМакетаШапка = Макет.ПолучитьОбласть("Шапка"); // Шапка документа.
   //ОбластьМакетаШапка = Макет.ПолучитьОбласть("СтрокаФизЛица"); ///ФИО в шапке
   ОбластьМакетаШапка = Макет.ПолучитьОбласть("Лат"); /// Имя латинскими в шапке
   ОбластьМакетаЛичныеДанные = Макет.ПолучитьОбласть("ЛичныеДанные"); /// область данных о физ лице
   ОбластьМакетаПодвал = Макет.ПолучитьОбласть("Подвал"); // макет контактной информации и далее
   Запрос = Новый Запрос;

		Запрос.Текст = 
		"ВЫБРАТЬ
		|	ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.Наименование, "" "") КАК Наименование,
		|	ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.ДатаРождения, "" "") КАК ДатаРождения,
		|	ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.МестоРождения, "" "") КАК МестоРождения,
		|	ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.ИНН, 0) КАК ИНН,
		|	ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.Код, 0) КАК Код,
		|	ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.КодИМНС, 0) КАК КодИМНС,
		|	ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.Пол, "" "") КАК Пол,
		|	ЕСТЬNULL(ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо.СтраховойНомерПФР, 0) КАК СтраховойНомерПФР,
		|	ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументВид.Представление, "" "") КАК ДокументВид,
		|	ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументДатаВыдачи, "" "") КАК ДокументДатаВыдачи,
		|	ЕСТЬNULL(ВЫРАЗИТЬ(ПаспортныеДанныеФизЛицСрезПоследних.ДокументКемВыдан КАК СТРОКА(300)), 0) КАК ДокументКемВыдан,
		|	ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументКодПодразделения, 0) КАК ДокументКодПодразделения,
		|	ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументНомер, 0) КАК ДокументНомер,
		|	ЕСТЬNULL(ПаспортныеДанныеФизЛицСрезПоследних.ДокументСерия, 0) КАК ДокументСерия,
		|	ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия, "" "") КАК Фамилия,
		|	ЕСТЬNULL(ФИОФизЛицСрезПоследних.Имя, "" "") КАК Имя,
		|	ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо,
		|	АдресПроживания.Представление КАК АдресПроживанияПредставление,
		|	ЕСТЬNULL(АдресПроживания.ИндексПроживания, "" "") КАК ИндексПроживания, 
		|	ЕСТЬNULL(АдресПроживания.РегионПроживания, "" "") КАК РегионПроживания,
		|	ЕСТЬNULL(АдресПроживания.РайонПроживания, "" "") КАК РайонПроживания,
		|	ЕСТЬNULL(АдресПроживания.ГородПроживания, "" "") КАК ГородПроживания,
		|	ЕСТЬNULL(АдресПроживания.ПоселокПроживания, "" "") КАК ПоселокПроживания,
		|	ЕСТЬNULL(АдресПроживания.УлицаПроживания, "" "") КАК УлицаПроживания,
		|	ЕСТЬNULL(АдресПроживания.ДомПроживания, "" "") КАК ДомПроживания,
		|	ЕСТЬNULL(АдресПроживания.КорпусПроживания, "" "") КАК КорпусПроживания,
		|	ЕСТЬNULL(АдресПроживания.КвартираПроживания, "" "") КАК КвартираПроживания,
		|	ЕСТЬNULL(АдресПроживания.Поле10, "" "") КАК Поле10,
		|	ЕСТЬNULL(ЮрАдрес.ИндексПрописки, "" "") КАК ИндексПрописки,
		|	ЕСТЬNULL(ЮрАдрес.РегионПрописки, "" "") КАК РегионПрописки,
		|	ЕСТЬNULL(ЮрАдрес.РайонПрописки, "" "") КАК РайонПрописки,
		|	ЕСТЬNULL(ЮрАдрес.ГородПрописки, "" "") КАК ГородПрописки,
		|	ЕСТЬNULL(ЮрАдрес.ПоселокПрописки, "" "") КАК ПоселокПрописки,
		|	ЕСТЬNULL(ЮрАдрес.УлицаПрописки, "" "") КАК УлицаПрописки,
		|	ЕСТЬNULL(ЮрАдрес.ДомПрописки, "" "") КАК ДомПрописки,
		|	ЕСТЬNULL(ЮрАдрес.КорпусПрописки, "" "") КАК КорпусПрописки,
		|	ЕСТЬNULL(ЮрАдрес.КвартираПрописки, "" "") КАК КвартираПрописки,
		|	ЮрАдрес.Представление КАК АдресПропискиПредставление
		|ИЗ
		|	Документ.ЗаявкаНаОткрытиеСчетов.РаботникиОрганизации КАК ЗаявкаНаОткрытиеСчетовРаботникиОрганизации
		|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних КАК ФИОФизЛицСрезПоследних
		|		ПО ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо = ФИОФизЛицСрезПоследних.ФизЛицо
		|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПаспортныеДанныеФизЛиц.СрезПоследних КАК ПаспортныеДанныеФизЛицСрезПоследних
		|		ПО ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо = ПаспортныеДанныеФизЛицСрезПоследних.ФизЛицо
		|		ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
		|			КонтактнаяИнформация.Объект КАК Объект,
		|			КонтактнаяИнформация.Представление КАК Представление,
		|			КонтактнаяИнформация.Поле1 КАК ИндексПроживания,
		|			КонтактнаяИнформация.Поле2 КАК РегионПроживания,
		|			КонтактнаяИнформация.Поле3 КАК РайонПроживания,
		|			КонтактнаяИнформация.Поле4 КАК ГородПроживания,
		|			КонтактнаяИнформация.Поле5 КАК ПоселокПроживания,
		|			КонтактнаяИнформация.Поле6 КАК УлицаПроживания,
		|			КонтактнаяИнформация.Поле7 КАК ДомПроживания,
		|			КонтактнаяИнформация.Поле8 КАК КорпусПроживания,
		|			КонтактнаяИнформация.Поле9 КАК КвартираПроживания,
		|			КонтактнаяИнформация.Поле10 КАК Поле10
		|		ИЗ
		|			РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
		|		ГДЕ
		|			КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресФизЛица)) КАК АдресПроживания
		|		ПО ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо = АдресПроживания.Объект
		|		ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
		|			КонтактнаяИнформация.Объект КАК Объект,
		|			КонтактнаяИнформация.Представление КАК Представление,
		|			КонтактнаяИнформация.Поле1 КАК ИндексПрописки,
		|			КонтактнаяИнформация.Поле2 КАК РегионПрописки,
		|			КонтактнаяИнформация.Поле3 КАК РайонПрописки,
		|			КонтактнаяИнформация.Поле4 КАК ГородПрописки,
		|			КонтактнаяИнформация.Поле5 КАК ПоселокПрописки,
		|			КонтактнаяИнформация.Поле6 КАК УлицаПрописки,
		|			КонтактнаяИнформация.Поле7 КАК ДомПрописки,
		|			КонтактнаяИнформация.Поле8 КАК КорпусПрописки,
		|			КонтактнаяИнформация.Поле9 КАК КвартираПрописки,
		|			КонтактнаяИнформация.Поле10 КАК Поле10
		|		ИЗ
		|			РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
		|		ГДЕ
		|			КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресФизЛица)) КАК ЮрАдрес
		|		ПО ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.ФизЛицо = ЮрАдрес.Объект
		|ГДЕ
		|	ЗаявкаНаОткрытиеСчетовРаботникиОрганизации.Ссылка = &Ссылка";
		Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);
		Запрос.УстановитьПараметр("ФизЛицо",СсылкаНаОбъект);
		Запрос.УстановитьПараметр("ДокументСерия", СсылкаНаОбъект);
        Запрос.УстановитьПараметр("ДокументНомер", СсылкаНаОбъект);
        Запрос.УстановитьПараметр("ДокументДатаВыдачи", СсылкаНаОбъект);
        Запрос.УстановитьПараметр("ДокументКемВыдан", СсылкаНаОбъект);
		Запрос.УстановитьПараметр("Представление", СсылкаНаОбъект);
	    Результат = Запрос.Выполнить(); 
		ВыборкаФизЛиц = Результат.Выбрать();
		ОбластьМакетаШапка = Макет.ПолучитьОбласть("Шапка");
		ОбластьМакетаШапка = Макет.ПолучитьОбласть("СтрокаФизЛица");
		ТекФизЛицо = "";
		Пока ВыборкаФизЛиц.Следующий() Цикл
			
			Если ТекФизЛицо <> ВыборкаФизЛиц.Наименование Тогда
				
		ОбластьМакетаЛичныеДанные.Параметры.Заполнить(ВыборкаФизЛиц);		
		ОбластьМакетаШапка.Параметры.Физ = ВыборкаФизЛиц.Наименование;
		ОбластьМакетаЛичныеДанные.Параметры.МестоРожденияРаботника = РегламентированнаяОтчетность.ПредставлениеМестаРождения(ВыборкаФизЛиц.МестоРождения);
		ОбластьМакетаЛичныеДанные.Параметры.ДатаРождения = Формат(ВыборкаФизЛиц.ДатаРождения, "ДФ=dd.MM.yyyy");
		///////////////////////////////////////////////////\Начало проба выбора адреса по виду
		
		////Адрес проживания
	//
	Если НЕ ВыборкаФизЛиц.ИндексПроживания = NULL Тогда 
	ОбластьМакетаЛичныеДанные.Параметры.ИндексПроживания = ВыборкаФизЛиц.ИндексПроживания;

	Если ВыборкаФизЛиц.РегионПроживания ="Кемерово г" ИЛИ ВыборкаФизЛиц.РегионПроживания = "Новокузнецк г" Тогда
		ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктПроживания = ВыборкаФизЛиц.РегионПроживания;
		Если  ЗначениеЗаполнено(ВыборкаФизЛиц.ГородПроживания) Тогда 
			ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктПроживания = ВыборкаФизЛиц.ГородПроживания;
		КонецЕсли;;
		ОбластьМакетаЛичныеДанные.Параметры.УлицаПроживания= ВыборкаФизЛиц.УлицаПроживания;
	Иначе		
		ОбластьМакетаЛичныеДанные.Параметры.ОбластьПроживания = ВыборкаФизЛиц.РегионПроживания + ?(ЗначениеЗаполнено(ВыборкаФизЛиц.РайонПроживания),", "+ВыборкаФизЛиц.РайонПроживания,"");
		Если Не ЗначениеЗаполнено(ВыборкаФизЛиц.ГородПроживания) И ЗначениеЗаполнено(ВыборкаФизЛиц.ПоселокПроживания) Тогда
			ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктПроживания = ВыборкаФизЛиц.ПоселокПроживания;
		Иначе
			ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктПроживания = ВыборкаФизЛиц.ГородПроживания;
		КонецЕсли;
		Если ЗначениеЗаполнено(ВыборкаФизЛиц.ГородПроживания) И ЗначениеЗаполнено(ВыборкаФизЛиц.ПоселокПроживания) Тогда //тогда поселок - это мкр.
			ОбластьМакетаЛичныеДанные.Параметры.УлицаПроживания = ВыборкаФизЛиц.УлицаПроживания+", "+ВыборкаФизЛиц.ПоселокПроживания;
		Иначе
			ОбластьМакетаЛичныеДанные.Параметры.УлицаПроживания = ВыборкаФизЛиц.УлицаПроживания;
		КонецЕсли;			
	   КонецЕсли;
    ОбластьМакетаЛичныеДанные.Параметры.ДомПроживания = ВыборкаФизЛиц.ДомПроживания;
	ОбластьМакетаЛичныеДанные.Параметры.КорпусПроживания = ВыборкаФизЛиц.КорпусПроживания;
	ОбластьМакетаЛичныеДанные.Параметры.КвартираПроживания = ВыборкаФизЛиц.КвартираПроживания;
	КонецЕсли;
	//
	////
	Если НЕ ВыборкаФизЛиц.АдресПроживанияПредставление = ВыборкаФизЛиц.АдресПропискиПредставление Тогда 
		ОбластьМакетаЛичныеДанные.Параметры.ИндексРегистрации = ВыборкаФизЛиц.ИндексПрописки;
		Если ВыборкаФизЛиц.РегионПрописки="Кемерово г" ИЛИ ВыборкаФизЛиц.РегионПрописки= "Новокузнецк г" Тогда
			ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктРегистрации = ВыборкаФизЛиц.РегионПрописки;
			Если  ЗначениеЗаполнено(ВыборкаФизЛиц.ГородПрописки) Тогда 
				ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктРегистрации = ВыборкаФизЛиц.ГородПрописки;
			КонецЕсли;
			
			ОбластьМакетаЛичныеДанные.Параметры.УлицаРегистрации= ВыборкаФизЛиц.УлицаПрописки;
		Иначе		
			ОбластьМакетаЛичныеДанные.Параметры.ОбластьРегистрации = ВыборкаФизЛиц.РегионПрописки + ?(ЗначениеЗаполнено(ВыборкаФизЛиц.РайонПрописки),", "+ВыборкаФизЛиц.РайонПрописки,"");
			Если Не ЗначениеЗаполнено(ВыборкаФизЛиц.ГородПрописки) И ЗначениеЗаполнено(ВыборкаФизЛиц.ПоселокПрописки) Тогда
				ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктРегистрации = ВыборкаФизЛиц.ПоселокПрописки;
			Иначе
				ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктРегистрации = ВыборкаФизЛиц.ГородПрописки;
			КонецЕсли;
			Если ЗначениеЗаполнено(ВыборкаФизЛиц.ГородПрописки) И ЗначениеЗаполнено(ВыборкаФизЛиц.ПоселокПрописки) Тогда //тогда поселок - это мкр.
				ОбластьМакетаЛичныеДанные.Параметры.УлицаРегистрации = ВыборкаФизЛиц.УлицаПрописки+", "+ВыборкаФизЛиц.ПоселокПрописки;
			Иначе
				ОбластьМакетаЛичныеДанные.Параметры.УлицаРегистрации = ВыборкаФизЛиц.УлицаПрописки;
			КонецЕсли;
		КонецЕсли;
		ОбластьМакетаЛичныеДанные.Параметры.ДомРегистрации = ВыборкаФизЛиц.ДомПрописки;
		ОбластьМакетаЛичныеДанные.Параметры.КорпусРегистрации = ВыборкаФизЛиц.КорпусПрописки;
		ОбластьМакетаЛичныеДанные.Параметры.КвартираРегистрации = ВыборкаФизЛиц.КвартираПрописки;
	КонецЕсли;
	
     
		
		
		
		///////////////////////////////////////\\Конец пробы
	 	ОбластьМакетаЛичныеДанные.Параметры.Серия =  ВыборкаФизЛиц.ДокументСерия +" "+  ВыборкаФизЛиц.ДокументНомер;
		ОбластьМакетаЛичныеДанные.Параметры.ДатаВыдачи = Формат(ВыборкаФизЛиц.ДокументДатаВыдачи, "ДФ=dd.MM.yyyy");
		ОбластьМакетаЛичныеДанные.Параметры.КемВыдан = ВыборкаФизЛиц.ДокументКемВыдан +" "+ ВыборкаФизЛиц.ДокументКодПодразделения;
		
		ЛАТ = СокрЛП(ВыборкаФизлиц.Имя +" "+ВыборкаФизлиц.Фамилия);
		ЛАТ = ПолучитьСтрокуНаЛатинском(ВыборкаФизлиц.Имя +" "+ВыборкаФизлиц.Фамилия);
		
		Для сч = 1 по мин(СтрДлина(ЛАТ),19) Цикл
		ОбластьМакетаШапка.Параметры["ЛАТ"+сч]=Сред(ЛАТ,сч,1);
		КонецЦикла;
		//// Конец
		///// Разложение ИНН по символьно Начало
		ИНН = СокрЛП(ВыборкаФизЛиц.ИНН);
		Для сч = 1 по СтрДлина(ИНН) Цикл
			ОбластьМакетаЛичныеДанные.Параметры["ИНН"+сч]=Сред(ИНН,сч,1);
		КонецЦикла;

		ТабДокумент.Вывести(ОбластьМакетаШапка);
		ТабДокумент.Вывести(ОбластьМакетаЛичныеДанные);
		ТабДокумент.Вывести(ОбластьМакетаПодвал);
		ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
      
	КонецЕсли;
	
		  //ТекФизЛицо = ВыборкаФизЛиц.Наименование;
        КонецЦикла;
	    
		Возврат ТабДокумент;
       
			
	
	КонецФункции // Печать
Показать
3. elis99 05.06.12 14:58 Сейчас в теме
Для условия
Если НЕ ВыборкаФизЛиц.АдресПроживанияПредставление = ВыборкаФизЛиц.АдресПропискиПредставление Тогда
Дописываете иначе и во все поля загоняете пустую строку "". И вся проблема думаю будет решена
т.е.
Иначе
ОбластьМакетаЛичныеДанные.Параметры.ИндексРегистрации = "";
ОбластьМакетаЛичныеДанные.Параметры.НаселенныйПунктРегистрации = "";
ОбластьМакетаЛичныеДанные.Параметры.УлицаРегистрации= "";
ОбластьМакетаЛичныеДанные.Параметры.ОбластьРегистрации = "";
ОбластьМакетаЛичныеДанные.Параметры.ДомРегистрации = "";
ОбластьМакетаЛичныеДанные.Параметры.КорпусРегистрации = "";
ОбластьМакетаЛичныеДанные.Параметры.КвартираРегистрации = "";
4. mumoza 06.06.12 06:23 Сейчас в теме
спс за подсказку разобрался.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот