helpf.pro
Регистрация

v7: Ошибка обновления записи Счет

xxx90
01.11.2011 15:17Прочитано: 3005
Пытаюсь изменить код счета в обработке
//*******************************************
Код 1C v 7.x
 Процедура Сформировать()
Сч=СоздатьОбъект("Счет.ЕПСБУ");
Сч.НайтиПоКоду("101.04.1");
Если Сч.Выбран()=1 Тогда
Сообщить("Счет найден!!");
Сч.Наименование="101.34.1";
Сч.Записать();
КонецЕсли;
КонецПроцедуры

выдается ошибка :Сч.Записать() Ошибка обновления записи
что предпринять?
Изменено 01.11.11 15:54:04 по причине: Разукрасил код
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
01.11.2011 16:00Ответ № 1
Создание, удаление и корректировка счетов
Обычно счета создаются вручную в режиме Конфигуратор или Предприятие.
Но иногда может потребоваться программная корректировка списка счетов.
Ошибка обновления записи может возникать:
1. Счет добавлен через конфигуратор и программно вы его не поменяете
2. У Счета выбранны другие типы субконто, проверьте свой код

Примеры:
Код 1C v 7.x
 Счета = СоздатьОбъект(“Счет.Основной”);
Счета.Новый(1); //у счета будут субсчета
Счета.Код = “10”;
Счета.Наименование = “Материалы”;
Счета.Активный = 1; //активный
Счета.Записать();

Счета.Новый();
Счета.Код = “10.1”;
Счета.Наименование = “Основные материалы”;
Счета.ВидСубконто(1,ВидыСубконто.Материалы);
Счета.ВидСубконто(2,ВидыСубконто.Склады);
Счета.Записать();

// Пример – изменить наименование счета:
Счета = СоздатьОбъект(“Счет.Основной”);
Счета.НайтиПоКоду(“10”);
Счета.Наименование = “Все материалы”;
Счета.Записать();

// Пример – пометить на удаление все счета, введенные пользователем в режиме “Предприятие”.
/ Оставить только счета, заданные разработчиком в Конфигураторе.
Счета = СоздатьОбъект(“Счет.Основной”);
Счета.ВыбратьСчета();
Пока Счета.ПолучитьСчет()=1 Цикл
Если Счета.ЗаданВКонфигурации()=0 Тогда
Счета.Удалить(0); //пометить на удаление
КонецЕсли;
КонецЦикла;

// Пример – отменить все пометки на удаление:
Счета = СоздатьОбъект(“Счет.Основной”);
Счета.ВыбратьСчета();
Пока Счета.ПолучитьСчет()=1 Цикл
Если Счета.ПометкаУдаления()=1 Тогда
Счета.СнятьПометкуУдаления();
КонецЕсли;
КонецЦикла;
Подсказка: Для быстрого перемещения к последнему ответу или к вопросу используйте или .
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.