УПП Лицевые счета
29.01.2009
11:40
#1
Какие программные средства надо использовать, чтобы изменить номера лицевых счетов сотрудников.
Данные вводились докуметом "Заявка на открытие счетов" с пометкой "Ввод начальных сведений". теперь при попытке ввести на сотрудника, имеющего карточку в определенном банке, нового номера , система ругается, что ключ существует и замену выполнить не дает. остатки вводились в 2006 году, редактировать документ нет возможности (он в закрытом периоде).
Данные вводились докуметом "Заявка на открытие счетов" с пометкой "Ввод начальных сведений". теперь при попытке ввести на сотрудника, имеющего карточку в определенном банке, нового номера , система ругается, что ключ существует и замену выполнить не дает. остатки вводились в 2006 году, редактировать документ нет возможности (он в закрытом периоде).
29.01.2009
13:17
#2
Судя по тому что регистр непериодический и подчинен регистратору, то единственным способом исправления лицевого счета является изменения документа которым была введена эта запись.
Очень интересный и удивительный факт.
Можно, конечно, пробовть обработкой поменять запись, но только поменять ту же запись, новую на тот же банк, того же контрагента, той же организации вообще нельзя создать
А по хорошему нужно задать вопрос 1С никам, как они планировали, как должен действовать пользователь, если вдруг у сотрудника изменится лицевой счет
Очень интересный и удивительный факт.
Можно, конечно, пробовть обработкой поменять запись, но только поменять ту же запись, новую на тот же банк, того же контрагента, той же организации вообще нельзя создать
А по хорошему нужно задать вопрос 1С никам, как они планировали, как должен действовать пользователь, если вдруг у сотрудника изменится лицевой счет
29.01.2009
13:26
#3
какой обработкой?
"Поиск и замена значений" не дает менять - все по той же причине, подчинен регистратору
"Поиск и замена значений" не дает менять - все по той же причине, подчинен регистратору
29.01.2009
13:56
#4
"Обработкой собственного изготовления
Некрасиво у меня сделано, а вот красиво нужно еще подумать:)
Если это поможет, то в обработке есть реквизиты:
ФизЛицо, Организация, Банк, НомерЛицевогоСчета, ЗаявкаНаОткрытиеСчетов;
Процедура КнопкаВыполнитьНажатие(Кнопка)
НаборЗаписей = РегистрыСведений.ЛицевыеСчетаРаботниковОрганизации.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Установить(ЗаявкаНаОткрытиеСчетов);
НаборЗаписей.Прочитать();
Если НаборЗаписей.Количество() >= 1 Тогда
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ЛицевыеСчетаРаботниковОрганизации.Регистратор КАК Регистратор,
| ЛицевыеСчетаРаботниковОрганизации.НомерСтроки,
| ЛицевыеСчетаРаботниковОрганизации.Активность,
| ЛицевыеСчетаРаботниковОрганизации.ФизЛицо,
| ЛицевыеСчетаРаботниковОрганизации.Организация,
| ЛицевыеСчетаРаботниковОрганизации.Банк,
| ВЫБОР
| КОГДА ЛицевыеСчетаРаботниковОрганизации.ФизЛицо = &ФизЛицо
| И ЛицевыеСчетаРаботниковОрганизации.Организация = &Организация
| И ЛицевыеСчетаРаботниковОрганизации.Банк = &Банк
| ТОГДА &НомерЛицевогоСчета
| ИНАЧЕ ЛицевыеСчетаРаботниковОрганизации.НомерЛицевогоСчета
| КОНЕЦ КАК НомерЛицевогоСчета
|ИЗ
| РегистрСведений.ЛицевыеСчетаРаботниковОрганизации КАК ЛицевыеСчетаРаботниковОрганизации";
Запрос.УстановитьПараметр("ФизЛицо", ФизЛицо);
Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("Банк", Банк);
Запрос.УстановитьПараметр("НомерЛицевогоСчета", НомерЛицевогоСчета);
Запрос.УстановитьПараметр("Регистратор", ЗаявкаНаОткрытиеСчетов);
НаборЗаписей.Загрузить(Запрос.Выполнить().Выгрузить());
//ЛицевойСчет = НаборЗаписей[0];
//ЛицевойСчет.НомерЛицевогоСчета = НомерЛицевогоСчета;
НаборЗаписей.Записать();
КонецЕсли;
КонецПроцедуры
"
Некрасиво у меня сделано, а вот красиво нужно еще подумать:)
Если это поможет, то в обработке есть реквизиты:
ФизЛицо, Организация, Банк, НомерЛицевогоСчета, ЗаявкаНаОткрытиеСчетов;
Процедура КнопкаВыполнитьНажатие(Кнопка)
НаборЗаписей = РегистрыСведений.ЛицевыеСчетаРаботниковОрганизации.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Регистратор.Установить(ЗаявкаНаОткрытиеСчетов);
НаборЗаписей.Прочитать();
Если НаборЗаписей.Количество() >= 1 Тогда
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ЛицевыеСчетаРаботниковОрганизации.Регистратор КАК Регистратор,
| ЛицевыеСчетаРаботниковОрганизации.НомерСтроки,
| ЛицевыеСчетаРаботниковОрганизации.Активность,
| ЛицевыеСчетаРаботниковОрганизации.ФизЛицо,
| ЛицевыеСчетаРаботниковОрганизации.Организация,
| ЛицевыеСчетаРаботниковОрганизации.Банк,
| ВЫБОР
| КОГДА ЛицевыеСчетаРаботниковОрганизации.ФизЛицо = &ФизЛицо
| И ЛицевыеСчетаРаботниковОрганизации.Организация = &Организация
| И ЛицевыеСчетаРаботниковОрганизации.Банк = &Банк
| ТОГДА &НомерЛицевогоСчета
| ИНАЧЕ ЛицевыеСчетаРаботниковОрганизации.НомерЛицевогоСчета
| КОНЕЦ КАК НомерЛицевогоСчета
|ИЗ
| РегистрСведений.ЛицевыеСчетаРаботниковОрганизации КАК ЛицевыеСчетаРаботниковОрганизации";
Запрос.УстановитьПараметр("ФизЛицо", ФизЛицо);
Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("Банк", Банк);
Запрос.УстановитьПараметр("НомерЛицевогоСчета", НомерЛицевогоСчета);
Запрос.УстановитьПараметр("Регистратор", ЗаявкаНаОткрытиеСчетов);
НаборЗаписей.Загрузить(Запрос.Выполнить().Выгрузить());
//ЛицевойСчет = НаборЗаписей[0];
//ЛицевойСчет.НомерЛицевогоСчета = НомерЛицевогоСчета;
НаборЗаписей.Записать();
КонецЕсли;
КонецПроцедуры
"
02.02.2009
11:46
#6
> Попробуйте через документ "Корректировка записей регистров"
Через корректировку не получается, так как это не периодический регистр, да еще и подчинен регистратору, то есть править нужно именну ту запись которая была создана первоначально. А если вы пытаетесь через корректировку записей регистров поправить, то выдается сообщение : "Зaпиcь c тaкими ключeвыми пoлями cущecтвуeт!":(.
Через корректировку не получается, так как это не периодический регистр, да еще и подчинен регистратору, то есть править нужно именну ту запись которая была создана первоначально. А если вы пытаетесь через корректировку записей регистров поправить, то выдается сообщение : "Зaпиcь c тaкими ключeвыми пoлями cущecтвуeт!":(.
Читают тему
(гостей: 1)