|
HELP: добраться до лицевых счетов ФЛ | ☑ | ||
---|---|---|---|---|
0
листопад
02.05.14
✎
23:07
|
Надо добраться до лицевых счетов физ.лица. Не получается, ничего не выводит и иошибок не дает ((( Вот код:
ш_СчетФЛ = ПолучитьНомерЛС(Выборка.ФИОРаботника); Функция ПолучитьНомерЛС(ФизЛицо) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЛицевыеСчетаРаботниковОрганизации.НомерЛицевогоСчета |ИЗ | РегистрСведений.ЛицевыеСчетаРаботниковОрганизации КАК ЛицевыеСчетаРаботниковОрганизации |ГДЕ | ЛицевыеСчетаРаботниковОрганизации.ФизЛицо.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка", ФизЛицо); Результат = Запрос.Выполнить().Выбрать(); Результат.Следующий(); Если Результат.НомерЛицевогоСчета <> Неопределено Тогда Возврат Результат.НомерЛицевогоСчета; Иначе Сообщить("У сотрудника " + ФизЛицо + " лицевой счет не заполнен!"); Стр = ""; Возврат Стр; КонецЕсли; КонецФункции |
|||
1
Torquader
02.05.14
✎
23:08
|
Результат.Следующий() возвращает успешность выборки элемента.
|
|||
2
листопад
02.05.14
✎
23:10
|
(1) А как тогда?
У этих ФЛ, на которых я тестирую, есть лицевые счета. |
|||
3
Фокусник
02.05.14
✎
23:10
|
(0) здесь Выборка.ФИОРаботника видимо "строка" находится, а нужно ссылку на физ.лицо передавать в функцию.
|
|||
4
ice777
02.05.14
✎
23:11
|
Выборка.ФИОРаботника <> ФизЛицо
где-то так ;) |
|||
5
Torquader
02.05.14
✎
23:12
|
(3) А - это я не заметил.
(2) Отладчиком пользоваться умеем ? P.S. пойду собаку погуляю - посмотрим, что можно сделать. |
|||
6
листопад
02.05.14
✎
23:13
|
(3) Да, Выборка.ФИОРаботника - строку возвращает. А как дальше тогда?
|
|||
7
листопад
02.05.14
✎
23:14
|
(4) Мне надо не ФИО, а его лицевой счет вытянуть...
|
|||
8
Фокусник
02.05.14
✎
23:15
|
(6) что ещё есть в Выборка? Нет ли там ссылки на физ.лицо?
|
|||
9
ice777
02.05.14
✎
23:15
|
(7) думай мозгом. наводка- типы.
|
|||
10
neo_matrix_123
02.05.14
✎
23:16
|
Пока ВыборкаЛицевойСчет.Следующий() Цикл
Ном = Ном + 1; ОбластьСтрока.Параметры.Ном = Ном; ФИОФизЛица = ПолучитьФамилиюФизЛица(ВыборкаЛицевойСчет.ФизЛицо); Если ФИОФизЛица <> Неопределено Тогда ОбластьСтрока.Параметры.Фамилия = СокрЛП(ФИОФизЛица.Фамилия); ОбластьСтрока.Параметры.Имя = СокрЛП(ФИОФизЛица.Имя); ОбластьСтрока.Параметры.Отчество = СокрЛП(ФИОФизЛица.Отчество); КонецЕсли; ОбластьСтрока.Параметры.НомерЛС = ВыборкаЛицевойСчет.НомерЛицевогоСчета; ОбластьСтрока.Параметры.Сумма = ВыборкаЛицевойСчет.Сумма; КонецЦикла; |
|||
11
листопад
02.05.14
✎
23:19
|
(8) Вот мой полный код:
Функция СформироватьЗапросДляПечатиТрудовогоДоговора() Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; Запрос.УстановитьПараметр("СправочникСсылка", СсылкаНаОбъект); Запрос.УстановитьПараметр("Физлицо", СсылкаНаОбъект.Физлицо); Запрос.УстановитьПараметр("Организация", СсылкаНаОбъект.Организация); Запрос.УстановитьПараметр("ДатаДокумента", СсылкаНаОбъект.ДатаДоговора); Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо КАК Физлицо, | ОтветственныеЛицаОрганизацийСрезПоследних.Должность, | ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо.Наименование КАК НаименованиеФизлица, | ФизическиеЛица.Комментарий |ПОМЕСТИТЬ ВТОтветственноеЛицо |ИЗ | РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних( | &ДатаДокумента, | ОтветственноеЛицо = ЗНАЧЕНИЕ(Перечисление.ОтветственныеЛицаОрганизаций.Руководитель) | И СтруктурнаяЕдиница = &Организация) КАК ОтветственныеЛицаОрганизацийСрезПоследних | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица | ПО ОтветственныеЛицаОрганизацийСрезПоследних.ФизическоеЛицо = ФизическиеЛица.Ссылка"; Запрос.Выполнить(); Запрос.Текст = "ВЫБРАТЬ | ОтветственноеЛицоОрганизации.Должность КАК ДолжностьРуководителя, | ТрудовойДоговор.НомерДоговора КАК НомерДок, | ТрудовойДоговор.ДатаДоговора КАК ДатаДок, | ТрудовойДоговор.Организация.НаименованиеПолное КАК ПолноеНазваниеОрганизации, | ЕСТЬNULL(ФИООтветственныхЛиц.Фамилия + "" "" + ФИООтветственныхЛиц.Имя + "" "" + ФИООтветственныхЛиц.Отчество, ОтветственноеЛицоОрганизации.НаименованиеФизлица) КАК ФИОРуководителя, | ЕСТЬNULL(ФИОФизЛиц.Фамилия + "" "" + ФИОФизЛиц.Имя + "" "" + ФИОФизЛиц.Отчество, ТрудовойДоговор.Физлицо.Наименование) КАК ФИОРаботника, //+( | ТрудовойДоговор.ФизЛицо КАК ФизЛицо, | ТрудовойДоговор.ФизЛицо.ДатаРождения КАК ДатаРожд, | ТрудовойДоговор.ФизЛицо.МестоРождения КАК МестоРожд, | ТрудовойДоговор.ФизЛицо.СтраховойНомерПФР КАК НомерПФР, //+) | ТрудовойДоговор.ДатаОкончания КАК ДатаУвольнения, | ТрудовойДоговор.ДатаНачала КАК ДатаПриема, | ТрудовойДоговор.Должность.Наименование КАК Должность, | ТрудовойДоговор.ЗанимаемыхСтавок, | ТрудовойДоговор.ИспытательныйСрок, | ТрудовойДоговор.ПодразделениеОрганизации.Наименование КАК Подразделение, | ВЫБОР | КОГДА ТрудовойДоговор.ВидЗанятости = ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ОсновноеМестоРаботы) | ТОГДА ""основной работе"" | ИНАЧЕ ""совместительству"" | КОНЕЦ КАК ВидЗанятости, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументСерия, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументНомер, | ПаспортныеДанныеФизЛицСрезПоследних.ДокументДатаВыдачи, | ВЫРАЗИТЬ(ПаспортныеДанныеФизЛицСрезПоследних.ДокументКемВыдан КАК СТРОКА(300)) КАК ДокументКемВыдан, | АдресРегистрации.Представление КАК АдресРегистрации, | ТелефонДомашний.Представление КАК Телефоны, | КонтактнаяИнформация.Представление КАК АдресОрганизации, | ТелефонОрганизации.Представление КАК ТелефоныОрганизации, | ТрудовойДоговор.Организация.Наименование КАК НазваниеОрганизации, // | ТрудовойДоговор.Организация.ИНН + ""/"" + ТрудовойДоговор.Организация.КПП КАК ИНН, //- //+( | ТрудовойДоговор.Организация.ИНН КАК ИНН, | ТрудовойДоговор.Организация.КПП КАК КПП, //+) | ТрудовойДоговор.ГрафикРаботы.ВидГрафика КАК ВидГрафика, | ТрудовойДоговор.ГрафикРаботы.ДлительностьРабочейНедели КАК ДлительностьРабочейНедели, | ТрудовойДоговор.ВидРасчета, | ТрудовойДоговор.ТарифнаяСтавка, | ТрудовойДоговор.ВалютаТарифнойСтавки.Наименование КАК ВалютаТарифнойСтавки, | ТрудовойДоговор.ПерсональныеНадбавки.( | Ссылка, | НомерСтроки, | Надбавка КАК Надбавка, | Показатель1 // | ) //+( | ), | ТрудовойДоговор.Организация.ОсновнойБанковскийСчет.Наименование КАК БСНаименование, | ТрудовойДоговор.Организация.ОсновнойБанковскийСчет.НомерСчета КАК БСНомерСчета, | ТрудовойДоговор.Организация.ОсновнойБанковскийСчет.Банк.Наименование КАК БанкаНаим, | ТрудовойДоговор.Организация.ОсновнойБанковскийСчет.Банк.КоррСчет КАК КСНаименование, | ТрудовойДоговор.Организация.ОсновнойБанковскийСчет.Банк.Код КАК бБИК //+) |ИЗ | Справочник.СотрудникиОрганизаций КАК ТрудовойДоговор | ЛЕВОЕ СОЕДИНЕНИЕ ВТОтветственноеЛицо КАК ОтветственноеЛицоОрганизации | ПО (ИСТИНА) | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних( | &ДатаДокумента, | Физлицо В | (ВЫБРАТЬ | Ответственные.Физлицо | ИЗ | ВТОтветственноеЛицо КАК Ответственные)) КАК ФИООтветственныхЛиц | ПО (ИСТИНА) | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&ДатаДокумента, Физлицо = &Физлицо) КАК ФИОФизЛиц | ПО (ИСТИНА) | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПаспортныеДанныеФизЛиц.СрезПоследних(&ДатаДокумента, Физлицо = &Физлицо) КАК ПаспортныеДанныеФизЛицСрезПоследних | ПО (ИСТИНА) | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресРегистрации | ПО ТрудовойДоговор.Физлицо = АдресРегистрации.Объект | И (АдресРегистрации.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресФизЛица)) | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ТелефонДомашний | ПО ТрудовойДоговор.Физлицо = ТелефонДомашний.Объект | И (ТелефонДомашний.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ТелефонФизЛица)) | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ПО ТрудовойДоговор.Организация = КонтактнаяИнформация.Объект | И (КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресОрганизации)) | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ТелефонОрганизации | ПО ТрудовойДоговор.Организация = ТелефонОрганизации.Объект | И (ТелефонОрганизации.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ТелефонОрганизации)) |ГДЕ | ТрудовойДоговор.Ссылка = &СправочникСсылка"; Возврат Запрос.Выполнить(); КонецФункции Функция Печать() Экспорт Выборка = СформироватьЗапросДляПечатиТрудовогоДоговора().Выбрать(); ш_СчетФЛ = ПолучитьНомерЛС(Выборка.ФИОРаботника); КонецФункции |
|||
12
листопад
02.05.14
✎
23:21
|
Еще уточнение: эту внешнюю печ.форму я делаю к справочнику "Сотрудники".
|
|||
13
Фокусник
02.05.14
✎
23:23
|
Если я правильно в телефоне рассмотрел код, то нужно:
ш_СчетФЛ = ПолучитьНомерЛС(СсылкаНаОбъект.Физлицо) |
|||
14
neo_matrix_123
02.05.14
✎
23:28
|
(13) +1
|
|||
15
листопад
02.05.14
✎
23:29
|
(13) Да!!! СПАСИБО!!! Все получилось!!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |