Доброго времени суток! С УРБД только начал работать. Сразу появилась проблема - в центральной базе загружают выписку банка и в переферийной выписку из другого банка. После обмена в базе задвоились выписки! И сейчас при попытке загрузки ругается "Номер не уникальный". Помогите, pls.
(2) Gisborn, А каким образом? Конфигурация самописанная, в 1С я не специалист (старый спец уволился, нового пока не взяли). А я просто админ. Где эти префиксы прописываются?
(3) alexchebanenko, Константы проставьте в базах- Префикс ИБ. Для каждой базы свой уникальный. Этот префикс будет добавляться к номерам создаваемых объектов.
В режиме предприятие Операции---Константы
Если константы нет (у вас конфигурация вообще с нуля самописная?) сделайте обработку вроде такой:
Для Сч=1 По Метаданные.Документ() Цикл
ИдентДок = Метаданные.Документ(Сч).Идентификатор;
Если (Метаданные.Документ(Сч).ТипНомера="Текстовый")И
(Найти(ДокБезПрефиксаИБ, ","+ИдентДок+",")=0) Тогда
ПрефиксАвтоНумерации("Документ."+ИдентДок, Префикс);
КонецЕсли;
КонецЦикла;
Для Сч=1 По Метаданные.Справочник() Цикл
ИдентСпр = Метаданные.Справочник(Сч).Идентификатор;
Если (Метаданные.Справочник(Сч).ТипКода="Текстовый") И
(Найти(СпрБезПрефиксаИБ, ","+ИдентСпр+",")=0) Тогда
ПрефиксАвтоНумерации("Справочник."+ИдентСпр, Префикс);
КонецЕсли;
КонецЦикла;
(6) hellf, Собственно, как я писал в 1С я практически ноль, подскажите куда эту обработку вставить? И еще, нумератор документа "выписка" числовой - как тогда быть? Перенумеровать получилось этой обработкой - http://1c.proclub.ru/modules/mydownloads/personal.php?cid=5&lid=1196
(9) alexchebanenko, вот это в процедуре приоткрытии:
Префикс=константа. ПрефиксИБ;
Для Сч=1 По Метаданные.Документ() Цикл
ИдентДок = Метаданные.Документ(Сч).Идентификатор;
Если (Метаданные.Документ(Сч).ТипНомера="Текстовый")И
(Найти(ДокБезПрефиксаИБ, ","+ИдентДок+",")=0) Тогда
ПрефиксАвтоНумерации("Документ."+ИдентДок, Префикс);
КонецЕсли;
КонецЦикла;
Для Сч=1 По Метаданные.Справочник() Цикл
ИдентСпр = Метаданные.Справочник(Сч).Идентификатор;
Если (Метаданные.Справочник(Сч).ТипКода="Текстовый") И
(Найти(СпрБезПрефиксаИБ, ","+ИдентСпр+",")=0) Тогда
ПрефиксАвтоНумерации("Справочник."+ИдентСпр, Префикс);
КонецЕсли;
КонецЦикла;
(13) alexchebanenko, в глобальник вставьте в процедуру при открытии, чтоб не мучиться. При первом же запуске он вам автонумерацию сделает с префиксом.
На копии только пробуйте штоли=))
А, и уберите проверку для документов и справочников без префиксов. Вы же все будете перенумеровывать?
Если нет, то исключения поставьте перед кодом.
вот например исключения в типовой бухгалтерии:
//Список видов документов и справочников, для которых не используются префиксы ИБ
//при работе в распределенной информационнй базе
ДокБезПрефиксаИБ = ",СчетФактура,";
СпрБезПрефиксаИБ = ",Валюты,ВидыДеятельности,ЕдиницыИзмерений,КлассификаторЕН,НалогиИОтчисления,ОсновныеСредства,
НематериальныеАктивы,Сотрудники,Подразделения,";
(15) hellf, В глобальнике нет процедуры ПриОткрытии, есть только ПриНачалеРаботыСистемы. А доки похоже все придется с префиксом делать. Просто получилось так, что на меня эту работу скинули - типа админ все может, распредиленки-то я создал и тут же начались проблемы. А 1С я только как админ знаю, переводил с dbf на sql.
Спросите у бухгалтеров, не принципиален ли им числовой номер у выписки. Мало ли что там за банк.
Хотя в любом случае можно номер для конфигурации и уриб иметь текстовый, а для банка, банк-клиента- сделать еще один, числовой.
запихайте в приначалеработысистемы
про нумерацию уточните у бухгалтеров и если префиксы нужны везде оставьте только
Префикс=константа. ПрефиксИБ;
Для Сч=1 По Метаданные.Документ() Цикл
ИдентДок = Метаданные.Документ(Сч).Идентификатор;
Если (Метаданные.Документ(Сч).ТипНомера="Текстовый") Тогда
ПрефиксАвтоНумерации("Документ."+ИдентДок, Префикс);
КонецЕсли;
КонецЦикла;
Для Сч=1 По Метаданные.Справочник() Цикл
ИдентСпр = Метаданные.Справочник(Сч).Идентификатор;
Если (Метаданные.Справочник(Сч).ТипКода="Текстовый") Тогда
ПрефиксАвтоНумерации("Справочник."+ИдентСпр, Префикс);
КонецЕсли;
КонецЦикла;