Цитата(Vofka @ 08.01.13, 13:46) необходимо зарегистрироваться для просмотра ссылки
В чем конкретно трудность?
Некоторая компания хочет раздать своим клиентам ID и что бы они их обязательно указывали во время оплаты за те или иные услуги.
Этот ID буде попадать в назначение платежа. От куда будет считываться в реквизит "УникальныйИД". Во время чтения выписки Клиент-банком он (Клиент банк) ищет контрагента согласно ОКПО (ЕГРПОУ) а необходимо что бы искал по ID Который записан в комментарий контрагента. Ежели комментарий пуст то по ОКПО.
Проблема в том как искать по комментарию???
Поиск по ОКПО в форме:
ВыборкаПоОКПО = НайтиПоОКПО(Строка.УникальныйИД, Строка.Контрагент);
НайденКонтрагент = Ложь;
Если ВыборкаПоОКПО.Следующий() Тогда //есть хоть один
Контрагент = ВыборкаПоОКПО.Ссылка;
НайденКонтрагент = Истина;
И в модуле объекта:
Функция НайтиПоОКПО(ОКПО, Наименование) Экспорт
Запрос = Новый Запрос;
ТекстЗапросаОКПО = "";
// Если ОКПО пусто, не ищем по нему, только по Наименованию юр лица.
Если Не ПустаяСтрока(ОКПО) Тогда
Запрос.УстановитьПараметр("ОКПО", Формат(Число(ОКПО),"ЧГ=0"));
Запрос.УстановитьПараметр("ОКПО8", Формат(Число(ОКПО),"ЧЦ=8;ЧВН=;ЧГ=0"));
Запрос.УстановитьПараметр("ОКПО12", Формат(Число(ОКПО),"ЧЦ=12;ЧВН=;ЧГ=0"));
ТекстЗапросаОКПО = "
| КодПоЕДРПОУ = &ОКПО ИЛИ
| КодПоЕДРПОУ = &ОКПО8 ИЛИ
| КодПоЕДРПОУ = &ОКПО12 ИЛИ";
КонецЕсли;
Запрос.УстановитьПараметр("Имя", Наименование);
ТекстЗапроса = "ВЫБРАТЬ
| Ссылка
|ИЗ
| Справочник." + ПолучитьИмяОбъектаКонфигурации("ТипСправочникаКонтрагенты") + "
|
|ГДЕ" + ТекстЗапросаОКПО + "
| Наименование = &Имя ИЛИ
| НаименованиеПолное ПОДОБНО &Имя";
//// объединяем с физическими лицами
//ТекстЗапросаДРФО = "";
//
//Если Не ПустаяСтрока(ОКПО) Тогда
// Запрос.УстановитьПараметр("ДРФО", Формат(Число(ОКПО),"ЧГ=0"));
// Запрос.УстановитьПараметр("ДРФО10", Формат(Число(ОКПО),"ЧЦ=10;ЧВН=;ЧГ=0"));
// Запрос.УстановитьПараметр("ДРФО12", Формат(Число(ОКПО),"ЧЦ=12;ЧВН=;ЧГ=0"));
// ТекстЗапросаДРФО = "
// | КодПоДРФО = &ДРФО ИЛИ
// | КодПоДРФО = &ДРФО10 ИЛИ
// | КодПоДРФО = &ДРФО12 ИЛИ";
//КонецЕсли;
Запрос.Текст = ТекстЗапроса;
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Возврат Выборка;
КонецФункции // НайтиПоОКПО()