Имя: Пароль:
1C
 
Команда ОбновитьНумерациюОбъектов как это работает
0 osa1C
 
27.01.22
09:10
Возникла проблема. Есть основная база, находящаяся удаленно от меня, у меня же есть ее копия для разработки. Тут потребовалось актуализировать данные в копии. Процесс не быстрый и как его делали на стороне заказчика для меня пока загадка, но слетела нумерация Документов одного вида (хотя может и других, но пока не нарывался на это). Документы в копии перестали проводится из-за неуникальности номера (периодичность - год).
   "Починил" командой ОбновитьНумерациюОбъектов(Метаданные.Документы.<ИмяДокумента>). Документы проводятся, но..... Документ должен при проведении создавать sms сообщение пользователю, а этот код был написан нашими партнерами и давным давно.
  Код на который ругается:

        Попытка
            Док.Записать(РежимЗаписиДокумента.Запись);
        Исключение
            Сообщить("СМС не сформировано! Ошибка записи документа!", СтатусСообщения.Внимание);
            Сообщить(ОписаниеОшибки());
            Возврат Ложь;
        КонецПопытки;

Строку Сообщить(ОписаниеОшибки()); добавил я и мне выдалась ошибка {Документ.<ИмяДокумента>.МодульОбъекта(463)}: Ошибка при вызове метода контекста (Записать): Значение "567480" поля "Номер" не уникально
При этом Номер у документа проставился совсем другой, он ставится автоматом, в коде подстановки номера документа нет.
   Отсюда возникает вопрос. Как именно команда ОбновитьНумерациюОбъектов  обновляет нумерацию и что с этим возможно сделать чтобы победить? Возможно кеш почистить?
1 vicof
 
27.01.22
09:33
Почисть кэш. Одобряю.
2 osa1C
 
27.01.22
09:49
(1) мимо... не помогло
3 Bigbro
 
27.01.22
10:05
жахни общее обновление нумерации, почисти кэш, перезапусти сервер 1с.
этот полный набор помогает всегда)
4 Serg_1960
 
27.01.22
10:10
(2) И не поможет. Как правило сначала исправляют "вручную" уже существующую неверную нумерацию документов, а только потом запускают ОбновитьНумерациюОбъектов() - "Выполняет обновление номеров в соответствии с номерами, записанными в базе данных. После вызова данного метода все выданные, но не записанные номера, становятся невалидными, т.к. не гарантируется их уникальность. Данный метод разрешено вызывать только администратору системы." https://helpf.pro/faq/view/1206

И не забываем: номера документам могут присваиваться с использованием нумераторов. https://v8.1c.ru/platforma/numerator/
5 osa1C
 
27.01.22
11:13
(4) что значит >>  сначала исправляют "вручную" уже существующую неверную нумерацию документов ? Номер документа не вводится вручную. Исправлять обработкой? программно?
6 Dmitrii
 
гуру
27.01.22
11:14
(0) >> Документ должен при проведении создавать sms сообщение пользователю.
>> Док.Записать(РежимЗаписиДокумента.Запись).


Спрашивается. Какого ... при проведении документ записывается ещё раз? Какого ... отправка СМС в проведении сидит?

Или ты что-то путаешь (вероятнее всего), или это редкостное *авно надо переделывать.
И в посте твоём явные противоречия. Пишешь "документы проводятся", но ошибка при проведении. Так проводятся или не проводятся?
По всей видимости какой-то дебильный алгоритм формирования СМС вызывает повторную принудительную запись документа. Возможно даже в одной транзакции вместе с проведением.

Второй вариант.
Командой ОбновитьНумерациюОбъектов(Метаданные.Документы.<ИмяДокумента>) ты починил нумерацию одного документа.
А команда Док.Записать(РежимЗаписиДокумента.Запись) делает запись другого документа (какого-нибудь служебного типа "Отправка СМС" или подчиненного). Но в тексте сообщения ты этого не видишь и думаешь, что речь идёт об исходном документе.
В таком случае выполни команду ОбновитьНумерациюОбъектов без параметров, чтобы обновились нумераторы всех объектов метаданных, включая кодировки справочников.
7 osa1C
 
27.01.22
11:18
(6) где ты проведение в строке Док.Записать(РежимЗаписиДокумента.Запись) увидел?
8 Dmitrii
 
гуру
27.01.22
11:20
(7) Ты сама читала то, что написала? Процитирую из (0): "Документ должен при проведении создавать sms сообщение. Код на который ругается: Док.Записать(РежимЗаписиДокумента.Запись)".

если ты имела ввиду что-то другое, то формулируй мысли яснее.
9 osa1C
 
27.01.22
11:24
(8) ты какой ориентации? .... если ты меня в женском роде называть начинаешь? Да, пользователь нажимает кнопку Провести! Но это не означает, что создание sms идет при проведении. Создание идет ПриЗаписи, о чем конкретно указано
10 Dmitrii
 
гуру
27.01.22
11:26
(9) ты какой ориентации?

А ты какой, если в качестве ника берешь "osa"? Для меня оса - женского рода. Уж извини.
11 osa1C
 
27.01.22
11:30
(10) аббревиатура - такое слово тебе не о чем не говорит?
12 Dmitrii
 
гуру
27.01.22
11:30
(9) >> пользователь нажимает кнопку Провести! Но это не означает, что создание sms идет при проведении. Создание идет ПриЗаписи, о чем конкретно указано.

Где ты это указал? Наоборот ты явно указал, что мы обсуждаем код, выполняемый при проведении. А то что некоторые альтернативно одаренные при проведении могут выполнять запись в режиме Запись - не такая уж и редкость. Что меня и возмутило.

Не надо так остро реагировать на мои посты.
Просто либо яснее излагай проблему. Либо уточняй - что именно мы обсуждаем, где находится код, в какой момент он выполняется.
13 PLUT
 
27.01.22
11:31
+(4) в настройках пофигуратора есть еще в свойствах корня пофигурации Режим автонумерации объектов (если стоить не освобождать автоматически - возможны "приколы" с номерами)
14 osa1C
 
27.01.22
11:31
(10) Имя Александр в профиле тоже не смог прочитать?
15 Dmitrii
 
гуру
27.01.22
11:33
(11) >> аббревиатура - такое слово тебе не о чем не говорит?

Конечно говорит. И говорит оно о том, что аббревиатуры пишутся большими буквами.

Обратившись к тебе в женском роде не имел цели обидеть. Всегда был уверен, что ты баба, глядя на ник. В саму личку никогда не заглядывал.
Извини, если обидел.

Но лучше переименоваться.
16 PLUT
 
27.01.22
11:33
+(13) в бюстгалтерии есть любители впихивать невпихуемое взад (задним числом), например к номеру документа добавить /1
17 Dmitrii
 
гуру
27.01.22
11:40
(14) Я уже извинился. Чего тебе ещё надо?
18 Dmitrii
 
гуру
27.01.22
11:42
Сделай ОбвновитьНумерациюОбъектов без параметров и будет тебе счастье.
Всегда после загрузки в уже существующую базу из копии, прежде чем начать создавать новые документы и справочники, всегда надо вызывать этот метод.
19 osa1C
 
27.01.22
11:52
(17) извинения приняты, насчет переименоваться - детский сад, штаны на лямках. Есть в форуме профиль, и его можно открывать. Там даже пол есть
20 Dmitrii
 
гуру
27.01.22
12:02
(19) А ты однако зануда ))))).
>> Есть в форуме профиль, и его можно открывать. Там даже пол есть.

Я крайне редко открываю профили. Мне это не интересно. Сложившаяся привычка.

>> Там даже пол есть.

Ага. Пол там есть, но есть огромное количество людей, которые не утруждают себя заполнением профиля вообще и этого поля в частности. Среди новых пользователей это вообще повальная проблема.

>> насчет переименоваться - детский сад, штаны на лямках.

Ну почему же? Ник OSA1C или OSA 1C вызвал бы у меня совершенно другие ассоциации. Не исключаю, что я такой не один, кто воспринимает твой ник, как женский.
Впрочем это уже твоё личное дело. Делай как считаешь нужным.
21 osa1C
 
27.01.22
12:11
(20) твой ник тоже много ассоциаций вызывает ... например буквой i ты обозначил й
22 МешочекЗнаний
 
27.01.22
12:14
(21) Вот ты душнила
23 fisher
 
27.01.22
12:31
(21) > твой ник тоже много ассоциаций вызывает
Аж интересно стало. Каких же?
(22) Осы - они такие. Фиг отмахаешься.
24 pechkin
 
27.01.22
12:37
при разворачивании копии на существующую базу всегда будет ошибка нумерации.
ибо сами нумераторы хранятся на сервере 1с
25 pechkin
 
27.01.22
12:38
нужно в 1с писать, чтобы в БСП добавили автообновление при нажатии кнопки "это копия".
я у себя так сделал
26 fisher
 
27.01.22
12:40
(25) О! А навскидку не вспомнишь, как в БСП при запуске определяется, что это возможно копия? И где потом хранится этот признак? Всегда интересно было, но не настолько чтобы лезть смотреть.
27 pechkin
 
27.01.22
12:42
констата есть
28 pechkin
 
27.01.22
12:42
в ней хранится путь к базе
29 fisher
 
27.01.22
12:44
Логично. То есть ответ не хранится? Просто отрубаются регламенты при утвердительном ответе, записывается новый путь и все?
30 pechkin
 
27.01.22
12:45
(29) наверно, но я не проверял
31 fisher
 
27.01.22
12:45
Спасибо.
32 Dmitrii
 
гуру
27.01.22
12:46
(21) По правилам транслитерации, утвержденным для госорганов (например, для оформления загранпаспорта), так пишется моё имя Дмитрий латиницей. Dmitrii.
http://pravo.gov.ru/proxy/ips/?docbody=&nd=102399461&intelsearch=%EF%F0%E8%EA%E0%E7+4271.
Мне может и не сильно нравится, но МИДу почему-то на*рать.
У меня на разных банковских картах в разное время как только не писали имя и Dmitrii, и Dmitriy, и Dmitry. Ник Dmitriy был занят, когда я регистрировался на форуме.
33 fisher
 
27.01.22
12:48
Споров на тему чей ник "правильнее" я еще не видел. Фидошников на вас нет.
34 Dmitrii
 
гуру
27.01.22
12:49
(33) А чё он ко мне пристал? 😥😪😢😭😩
35 fisher
 
27.01.22
12:51
Хотя нет. Вспомнилось бессмертное:

BANTYC:
- блядь! ну сколько раз повторять??!! Я Бантик!!! По-русски это читается Б-А-Н-Т-И-К!!!
36 osa1C
 
27.01.22
13:28
(33) ну вот и второе удивление )))) Смысл моего ника был задуман ещё в 90-е, когда нужен был короткий и запоминающийся ник для почты. А был в Windows 9X системный файл osa с настройками, который постоянно "вылетал" тем самым не давая Windows загружаться. Лечение было простым. С загрузочной  тогда еще дискеты загружаешь комп и подменяешь файл osa на свой с той же дискеты .... и профит)))
  Вот и пошел ник у меня такой... А потом как оказалось и аббревиатура подошла (название города + фамилия + имя)
37 PLUT
 
27.01.22
13:32
(36) osa это полосатый мух
38 osa1C
 
27.01.22
13:34
(37) так и есть)))
39 Dmitrii
 
гуру
27.01.22
15:05
Про пол в анкете.
Margo93 по анкете это мужик. По постам на форуме - баба. При том, что ник создан не вчера и уже не одна ветка на форуме открыта от этого имени.

(38) >> osa это полосатый мух. так и есть))).

Так в том и проблема. Оса - женского рода. Потому и ник воспринимается как женский. Впрочем, кажется я это уже писал.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn