|
ПечФорма: сведения об орг-ции | ☑ | ||
---|---|---|---|---|
0
листопад
13.04.14
✎
18:07
|
Можно ли как-нибудь проще вывести в печ.форме данные об орг-ции. Т.е. надо следующие реквизиты разместить в столбец:
-Полное наименование орг-ции; -Фактический адрес; -Корр.счет и т.д. Ниже код, он подтягивает нужные мне данные, но как мне кажется, можно как-то сделать проще и все время не обращаться к одной и той же функции: ОбластьМакета = Макет.ПолучитьОбласть("Подвал"); ПредставлениеОрганизации = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм"); ФактАдрес = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "ФактическийАдрес"); КСчет = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОбОрганизации, "КоррСчет"); ОбластьМакета.Параметры.ПолнНаимОрг = ПредставлениеОрганизации; ОбластьМакета.Параметры.ФактическийАдрес = ФактАдрес; ОбластьМакета.Параметры.ОргКорСчет = КСчет; ТабличныйДокумент.Вывести(ОбластьМакета); |
|||
1
Лаврентий Берия
13.04.14
✎
18:11
|
>> можно как-то сделать проще и все время не обращаться к одной и той же функции
Конечно, вместо этого можно использовать свой код, самому брать данные из регистров и справочников. Переписывать свой код в случае изменения механизмов типовой конфигурации также придётся. подсказка: СведенияОбОрганизации - какого типа значение? |
|||
2
Wobland
13.04.14
✎
18:13
|
в твоём случае следует успокоится, если всё работает
|
|||
3
Alex S D
13.04.14
✎
18:14
|
+
|
|||
4
Torquader
13.04.14
✎
18:16
|
Нет, а что вас пугает ?
Конечно, можно посмотреть, как работает данная функция, и сделать всё, как там, но без вызова функции, но, как сказал (1) при обновлении ваш код перестанет работать. |
|||
5
листопад
13.04.14
✎
18:19
|
(2) :)
(4) Некрасиво как-то... |
|||
6
Wobland
13.04.14
✎
18:26
|
(5) а скопируй сюда описание функции
|
|||
7
листопад
13.04.14
✎
18:32
|
(6)
Функция ОписаниеОрганизации(СписокСведений, Список = "", СПрефиксом = Истина) Экспорт Если ПустаяСтрока(Список) Тогда Список = "ИНН,Свидетельство,ЮридическийАдрес,Телефоны,НомерСчета,Банк,БИК,КоррСчет"; Если НЕ СписокСведений.Свойство("НаименованиеДляПечатныхФорм") Тогда Список = "НаименованиеПолное," + Список; Иначе Список = "НаименованиеДляПечатныхФорм," + Список; КонецЕсли; КонецЕсли; Результат = ""; СоответствиеПараметров = Новый Соответствие(); СоответствиеПараметров.Вставить("ПолноеНаименование", " "); СоответствиеПараметров.Вставить("СокращенноеНаименование", " "); СоответствиеПараметров.Вставить("НаименованиеДляПечатныхФорм", " "); СоответствиеПараметров.Вставить("ИНН", " ИНН "); СоответствиеПараметров.Вставить("КПП", " КПП "); СоответствиеПараметров.Вставить("Свидетельство", " "); СоответствиеПараметров.Вставить("СвидетельствоДатаВыдачи", " от "); СоответствиеПараметров.Вставить("ЮридическийАдрес", " "); СоответствиеПараметров.Вставить("Телефоны", " тел.: "); СоответствиеПараметров.Вставить("Факс", " факс: "); СоответствиеПараметров.Вставить("НомерСчета", " р/с "); СоответствиеПараметров.Вставить("Банк", " в банке "); СоответствиеПараметров.Вставить("БИК", " БИК "); СоответствиеПараметров.Вставить("КоррСчет", " к/с "); СоответствиеПараметров.Вставить("КодПоОКПО", " Код по ОКПО "); Список = Список + ?(Прав(Список, 1) = ",", "", ","); ЧислоПараметров = СтрЧислоВхождений(Список, ","); Для Счетчик = 1 По ЧислоПараметров Цикл ПозЗапятой = Найти(Список, ","); Если ПозЗапятой > 0 Тогда ИмяПараметра = Лев(Список, ПозЗапятой - 1); Список = Сред(Список, ПозЗапятой + 1, СтрДлина(Список)); Попытка СтрокаДополнения = ""; СписокСведений.Свойство(ИмяПараметра, СтрокаДополнения); Если ПустаяСтрока(СтрокаДополнения) Тогда Продолжить; КонецЕсли; Префикс = СоответствиеПараметров[ИмяПараметра]; Если Не ПустаяСтрока(Результат) Тогда Результат = Результат + ","; КонецЕсли; Результат = Результат + ?(СПрефиксом = Истина, ?(ПустаяСтрока(Результат), СокрЛ(Префикс), Префикс), "") + СтрокаДополнения; Исключение ТекстСообщения = НСТр("ru = 'Не удалось определить значение параметра организации:'") + " " + ИмяПараметра; ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); ОписаниеОшибки = ИнформацияОбОшибке(); ЗаписьЖурналаРегистрации(ТекстСообщения, УровеньЖурналаРегистрации.Ошибка,,, ОписаниеОшибки.Описание); КонецПопытки; КонецЕсли; КонецЦикла; Результат = СокрЛП(Результат); Пока Найти(Результат, " ") > 0 Цикл Результат = СтрЗаменить(Результат, " ", " "); КонецЦикла; Возврат Результат; КонецФункции // ОписаниеОрганизации() |
|||
8
Wobland
13.04.14
✎
18:35
|
(7) описание чуть выше
|
|||
9
Wobland
13.04.14
✎
18:37
|
впрочем, не взлетит
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |