Имя: Пароль:
1C
1С v8
Разбить представление адреса на части
0 Тринадцать
 
25.08.20
07:12
Всем привет! Зуп 3.1.14.97, для печатной формы нужно вытащить индекс сотрудника и оставшийся адрес прописать без индекса (Как в личной карточке Т2).

АдресПоПрописке  = УправлениеКонтактнойИнформацией.ПредставлениеКонтактнойИнформацииОбъекта( СсылкаНаОбъект.ФизическоеЛицо,
                               Справочники.ВидыКонтактнойИнформации.АдресПоПропискеФизическиеЛица,, ТекущаяДата());
АдресПоПрописке2 = РегламентированнаяОтчетностьКлиентСервер.РазложитьАдрес(АдресПоПрописке);
СтруктураАдреса  = РаботаСАдресами.СведенияОбАдресе(АдресПоПрописке2);
ПараметрИндекс     = СтруктураАдреса.Индекс;

Эти функции с представлением адреса правильно работают только если присутствует в адресе все поля структуры.
Проблема в  том, что если в адресе не все параметры (например, нет района или корпуса дома), то в поле индекс может попасть значение Страна.
как вытащить именно индекс ?
1 RomaH
 
naïve
25.08.20
07:16
АдресПоПрописке2 = РегламентированнаяОтчетностьКлиентСервер.РазложитьАдрес(АдресПоПрописке);
СтруктураАдреса  = РаботаСАдресами.СведенияОбАдресе(АдресПоПрописке2);

а зачем первая строка?

// Параметры:
//   Адрес                  - Строка - Адрес во внутреннем формате JSON или в XML, соответствующем XDTO-пакету Адрес.
//                          - ОбъектXDTO - XDTO-объект, соответствующий XDTO пакету Адрес.
//                          - Неопределено - конструктор для получения пустых полей адреса.
2 Тринадцать
 
25.08.20
07:22
Первая функция получает адрес - строка , вторая раскладывает его
3 RomaH
 
naïve
25.08.20
07:23
АдресПоПрописке2 - что тут?
4 Тринадцать
 
25.08.20
07:26
5 RomaH
 
naïve
25.08.20
07:28
издеваешься?
6 Тринадцать
 
25.08.20
07:32
почему? просто не догоняю..
7 RomaH
 
naïve
25.08.20
07:35
8 RomaH
 
naïve
25.08.20
07:36
9 RomaH
 
naïve
25.08.20
07:37
РаботаСАдресами.СведенияОбАдресе в первом параметре ждет строку ...
или у меня БСП устаревшая?
10 Тринадцать
 
25.08.20
07:47
(8) сорян.. не тот прикрепила
11 Тринадцать
 
25.08.20
07:49
(9) да, первый параметр АдресПоПрописке - строка. передаю туда его
СтруктураАдреса  = РаботаСАдресами.СведенияОбАдресе(АдресПоПрописке);
ПараметрИндекс   = СтруктураАдреса.Индекс;