![]() |
Модераторы: stron |
![]() ![]() ![]() |
|
Guitar_Player |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 2.1.2007 Где: г.Новосибирск Репутация: нет Всего: нет |
При перезгрузке приходного кассового ордера возникла ошибка не уникального номера документа.
Новый номер получал так: Док.УстановитьНовыйНомер(); Как можно исправить это? Еще например если в документах типа авансовый платеж создавать подряд 5 документов с номерами, к примеру (00001,00002,00003,00004,00005) а потом удалить 2рой, то если снова создать то номер будет не 00002 а 00006. как это можно исправить? |
|||
|
||||
Barcoder |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 28.2.2008 Репутация: нет Всего: нет |
1. Если в документе автонумерация, тогда не нужно УстановитьНовыйНомер().
2. стандартно 1С не сможет так нумеровать, пишите функцию, которая будет искать пропуски номеров и присваивать эти номера. Другой вариант - обработка "перенумерация документов". |
|||
|
||||
Guitar_Player |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 2.1.2007 Где: г.Новосибирск Репутация: нет Всего: нет |
Ну с пропущенными номерами я разберусь. А вот с получением нового не понял...
В документе автонумерация. Это как проверить? посмотреть? Т.е. вы хотите сказать что потому что в документе автономирация то сначала присваивается номер при создании автоматически а потом я вручную присваиваю номер? и по этому ошибка. Так? |
|||
|
||||
Barcoder |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 28.2.2008 Репутация: нет Всего: нет |
проверьте в конфигураторе у данного документа стоит ли галочка автонумерация.
Если есть, тогда уберите вообще УстановитьНовыйНомер. Проблема также может возникнуть, если нумерация документов у Вас в пределах года (тоже в конфигураторе смотрите), в этом случае, если создавать документы прошлым годом, нужно изменить РабочуюДату на 31.12.2007. |
|||
|
||||
Guitar_Player |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 2.1.2007 Где: г.Новосибирск Репутация: нет Всего: нет |
А можно автоматизировать этот процесс?
Т.е. обработка может сохранять/загружать разные документы. И как проверить стоит ли галочка, чтобы тогда не выполнять получитьномер? |
|||
|
||||
Barcoder |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 28.2.2008 Репутация: нет Всего: нет |
Автоматизировать все можно, но нужно понять, почему не уникальный номер.
Причины: 1. Номер документа строчного типа, и нумерация была типа 001,002,003....999 - при создании следующего документа присвоится тоже 999, т.е. не уникальный. В этом случае нужно перенумеровать документы, добавив спереди нули,например: 000001,000002.... 2. Выбрана нумерация документа в пределах года, месяца и т.п. В этом случае, чтобы создать документ, рабочая дата 1С должна соответствовать периоду нумерации создаваемого документа. 3. У документа в конфигураторе задана короткая длина поля номера, например: Номер типа Число 5 : т.е. 99999 будет последним, все вновь создаваемые документы тоже будут иметь номер 99999... УстановитьНовыйНомер используется обычно так: Док.УстановитьНовыйНомер(Организация.Префикс), когда учет по нескольким организациям, чтобы номер документа содержал префикс выбранной фирмы. Выбрали в документе другую фирму, вызываем снова Док.УстановитьНовыйНомер(Организация.Префикс). Когда распределенная база, также нужно использовать этот метод, чтобы не совпали номера документов, созданных в центре и в филиале. Префикс тогда складывается из СокрП(Константа.ПрефиксБазы)+СокрП(Организация.Префикс), например. |
|||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 7 Всего: 34 |
Наличие автонумерации можно проверить через Метаданные,
Проблем может быть несколько: 1. Преход на год(ы) назад, в этом случае помогает сначала установить дату у документа, а потом получить новый номер УстановитьНовыйНомер() 2. Может быть проблема с некорректными исправлениями номеров (например если номер текстовый и кто-то умный вместо 000001 исправит на 1, то автонумерация будет работатть только до 9) - обходится добавлением префикса УстановитьНовыйНомер("0") |
|||
|
||||
Guitar_Player |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 2.1.2007 Где: г.Новосибирск Репутация: нет Всего: нет |
добавив спереди нули,например: 000001,000002...
А как добавить с переди нули? Там же длина номера ограниченна? Т.е. Нужно изменить длину номера а потом перенумировать все документы? Как изменить длину номера. Вроде же программно никак?. 2. Выбрана нумерация документа в пределах года, месяца и т.п. Вы хотите сказать. Что нужно проверить через метаданные стоит ли у этого конкретного документа флажек нумерация в течении года? и если стоит то перевести рабочую дату на дату создания документа. Получить номер и вернуть рабочую дату обратно. так? обходится добавлением префикса УстановитьНовыйНомер("0") Не понял почему ну помогает... ================================= Теперь надо объединить все эти варианты в одну функцию и получить номер... |
|||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 7 Всего: 34 |
![]()
Теперь понятно? |
|||
|
||||
Guitar_Player |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 2.1.2007 Где: г.Новосибирск Репутация: нет Всего: нет |
Хм... Это то понятно. я так и делал....
А как нули спереди добавить? |
|||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 7 Всего: 34 |
Тебе нули и добавит, не добавит только в случае, если у тебя номер числовой, или с номерами накосячили так, что теперь надо все документы перенумеровывать... Можно, конечно, придумать обходной путь - но нет никакой гарантии, что ты не сталкнешься задвоенным номером.... так что если с номерами бардак - то только полна перенумерация уже существующих документов. |
|||
|
||||
Guitar_Player |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 2.1.2007 Где: г.Новосибирск Репутация: нет Всего: нет |
Хорошо...
Вот смотрите ошибка о том что номер не уникальный возникает только при попытке записать документ. Можно так написать
или так не стоит? как понять что с номерами накосячили и нужно перенумировать документы? |
|||
|
||||
Guitar_Player |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 2.1.2007 Где: г.Новосибирск Репутация: нет Всего: нет |
Я почти сделал. Но у меня появился вопрос... Если мы перенумируем всю базу. То это может привести к ошибке так или нет?
Если загрузить какой нибудь новый документ у которого был,например в ТЧ, реквизит типа документ то он же этот реквизит будет находить вот так
Он его найдет по дате и индефикатору если номер изменился или не найдет? Повидимому не найдет и будет ошибка! Так? У меня база маленькая проверить негде... Как быть? |
|||
|
||||
Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 7 Всего: 34 |
![]() Конечно не найдет, т.к. в указанном тобой выражении главное - это номер документа, как же он его найдет, если ты номер поменяешь.... Если у тебя загруженные документы в дальнейшем используются в качестве реквизитов, то менять номера вообще нельзя!!!! В этом случае надо разбираться почему у тебя задваиваются номера документов!!!! Опиши задачу более подробно, постараемся разобраться, что ты делаешь не так. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "1C: Предприятие, SAP, ERP и учётные системы" | |
|
Запрещается! 1. Обсуждение крэков, кейгенов и других подобных программ Пробуйте искать сами или обращайтесь в приват к участникам форума. Темы с подобными вещами будут немедленно удаляться, а нарушители - получать предупреждения. Также запрещается обсуждение проблем работы этих программ (что куда вписать, куда что скопировать и т.п...) 2. Давать ссылки на взломанные продукты
|
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | 1C: Предприятие, SAP, ERP и учётные системы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |