Внешняя Обработка

  • Автор темы rpaM
  • Дата начала
R

rpaM

#1
добрый день!
Очень нужна помощь.В 1с8.2 есть справочник контрагенты.Необходимо в наименовании убрать ковычки и ООО,ОАО, и т.д.убрать в конец.не получается
Код внеш.обр.
Запрос = Новый
Запрос;
Запрос.Текст=
"Выбрать*
|из Справочник.Контрагенты //ищу справочник,не группу
|ГДЕ
|не этоГруппа";
Выб=Запрос.Выполнить().Выбрать();
Пока Выб.Следующий()Цикл
Об_спр=Выб.Ссылка.ПолучитьОбъект();
a=Об_спр.Наименование;
//далее не уверен в написанном
Если Об_спр.Наименование="" тогда
Результат = СтрЗаменить(Об_спр.Наименование, "//здесь находим нужный символ", "//найден.символ меняем на тут");
//Функцию перемещения в конец строки не нашел((
КонецЕсли;
Об_спр.Записать();
КонецЦикла

Только прошу не гнать,код в 1с пишу впервые.
 

Allexei

Well-known member
02.05.2008
322
1
#2
Кури
Код:
 Запрос = Новый Запрос("ВЫБРАТЬ
|	Контрагенты.Ссылка
|ИЗ
|	Справочник.Контрагенты КАК Контрагенты
|ГДЕ
|	Контрагенты.ЭтоГруппа = ЛОЖЬ");	

Выборка = Запрос.Выполнить().Выбрать();

Пока Выборка.Следующий() Цикл

Контрагент					 = Выборка.Ссылка.ПолучитьОбъект();

Контрагент.Наименование= СтрЗаменить(Контрагент.Комментарий, """", "");
Контрагент.Наименование= СтрЗаменить(Контрагент.Комментарий, "«", "");
Контрагент.Наименование= СтрЗаменить(Контрагент.Комментарий, "»", "");

Если НЕ Найти(Контрагент.Наименование, "ООО") = 0 Тогда
Контрагент.Наименование = СтрЗаменить(Контрагент.Комментарий, "ООО", "");
Контрагент.Наименование = Контрагент.Наименование + " ООО";
КонецЕсли;
Контрагент.Записать();
КонецЦикла;
Код не совсем феншуйный, но принцип работы будет понятен
 
R

rpaM

#3
спасибо.
Вечером сам разобрался,код примерно такой же написал.С некоторыми нюансами.СпС