Как изменить адрес контрагента в 1С 8.1

Новая тема
"Пожалуйста подскажите как можно изменить программно юридический адрес контрагента?

Контрагент = Справочники.Контрагенты.НайтиПоКоду(КодКонтрагента).ПолучитьОбъект();
Контрагент.ИНН = ИНН;
Контрагент.КПП = КПП;

.... тут нужно написать изменение юридического адреса, где переменная адреса - АдресКонтрагента

Контрагент.Записать();

Я так понял через общий модуль нужно это сделать?

Не пойму что то...Подскажите пожалуйста, знаю что вопрос дурацкий на самом деле...

"
В общем разобрался сам...
"Вот как я выводил юридический и фактический адреса контрагентов в 1С 8.1:

// пишем самодельную функцию:

Функция ПолучитьАдрес(КодКонтрагента, ВидАдреса=0)

Результат = """";

Если ВидАдреса = 0 Тогда

Адрес = "Юридический адрес";

Иначе

Адрес = "Фактический адрес";

КонецЕсли;

НаборЗаписей = РегистрыСведений.КонтактнаяИнформация;

ВыборкаРС = НаборЗаписей.Выбрать();

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

Если ТипЗнч(ВыборкаРС.Объект) = Тип("СправочникСсылка.Контрагенты") Тогда

Если СокрЛП(ВыборкаРС.Объект.Код) = СокрЛП(КодКонтрагента) Тогда

Если СокрЛП(ВыборкаРС.Вид) = Адрес Тогда

Результат = Строка(ВыборкаРС.Представление);

КонецЕсли;

КонецЕсли;

КонецЕсли;

КонецЦикла;

Возврат Результат;

КонецФункции


Процедура КнопкаСформироватьНажатие(Кнопка)
// Вставить содержимое обработчика.

  //Родитель = Справочники.Контрагенты.НайтиПоКоду("000000001"); // группа справочника

ВыборкаСК = Справочники.Контрагенты.Выбрать(Справочники.Контрагенты.ПустаяСсылка(),,,"Код Возр");
//ВыборкаСК = Справочники.Контрагенты.Выбрать(Родитель,,,"Код Возр");

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

Если ВыборкаСК.ЭтоГруппа = Истина Тогда

Продолжить;

КонецЕсли;

Адрес = ПолучитьАдрес(ВыборкаСК.Код,1);

Если ПустаяСтрока(Строка(Адрес)) = 0 Тогда

Сообщить(Адрес);

Иначе

Сообщить(" ");

КонецЕсли;

КонецЦикла;

КонецПроцедуры

В восьмёрке часть данных справочника контрагентов хранится не в самом справочнике "Контрагенты" (как в 7-ке), а в РегистрыСведений.КонтактнаяИнформация. Вот такая вот система "через задницу"."
> Вот такая вот система "через задницу".

ИМХО тоже самое можно сказать про вышеописанный код программы...
Вообще-то это мой первый в жизни код на 1С 8.0. :) Написан на скорую руку - без знания 8-ки, чисто через Яндекс + Синтакс-помощник. Задача стояла перегрузить справочник контрагенты из 8-ки в 7-ку с минимумом затрат времени на изучение 8-ки.

Всё-таки трудно, абсолютно не зная 8-ку, за 2 дня написать даже такой код. :)
"Ну если это не последний Ваш код на 8-ке, то в следующий раз, когда захотите поделиться чем-то полезным на форуме, то хотя бы убирайте из кода все отладочные строки и, по возможности, постарайтесь избегать критики тех механизмов 1С, с которыми знакомы только поверхностно. ;)"
Я критикую потому, что вообще очень плохого мнения о продукции фирмы 1С. Они способны извратить (в своих программных продуктах) самую здравую идею. 8-ка произвела негативное впечатление (даже по сравнению с 7-кой, которая тоже плохая).
Отладочный код - пригодится другим, у кого-то может быть чуть иная задача.

Кстати - небольшое добавление: к коду

Если СокрЛП(ВыборкаРС.Объект.Код) = СокрЛП(КодКонтрагента) Тогда

нужно ещё добавить доп. проверку на совпадения кодов родителей.
"а переборка всех записей  всего Регистра не нужна , а если там будет миллион записей?

Курите Отборы , запросы

из справки:
Курсы = РегистрыСведений.КурсыВалют;
ОтборВалют = Новый Структура("Валюта");
ОтборВалют.Валюта = ВыбВалюта;
ВыборкаКурсовВалют = Курсы.Выбрать(,,ОтборВалют);
Пока ВыборкаКурсовВалют.Следующий() Цикл
   Сообщить("Дата " + ВыборкаКурсовВалют.Период +
   " Валюта "+СокрЛП(ВыборкаКурсовВалют.Валюта) +
   ", Курс "+ ВыборкаКурсовВалют.Курс );
КонецЦикла;

"
> Всё-таки трудно, абсолютно не зная 8-ку...

и

> Я критикую потому, что вообще очень плохого мнения о продукции фирмы 1С

Вам самому не смешно? Очень напоминает "кошек", которых чтобы нравились "нужно уметь готовить"...
Читают тему
(гостей: 1)

Быстрый переход