Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / 8.2 УФ Установка нового префикса уже записаного объекта / 12 сообщений из 12, страница 1 из 1
26.12.2011, 14:29
    #37593508
Last1Cmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
Задача
Есть записаный объект со своим кодом (элемент справочника)
В некоторых ситуациях код этого объекта надо изменить причем так чтобы сработала новая перфиксация дабы не нарваться на контроль уникальности и нумерация нового префикса была также уникальной и непрерывно автоматической.
Плюс старая префиксация должна остаться причем в уменьшеном на один шаг виде

Т.е. имеем объект с кодом ХХ-000032
Необходимо его перезаписать с кодом ХХУ000001 а новый следующий объект получит код ХХ-000032
Следующий объект перезаписаный получит уже код ХХУ000002

Для чего надо ? орагнизация отмены операций с тем учетом чтобы не сбить сплошную нумерацию справочника договоров и иметь историю отменённых (те что с другим префиксом) операций
...
Рейтинг: 0 / 0
26.12.2011, 17:07
    #37593878
Kreontsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
Должно помочь:
УстановитьНовыйКод(<ПрефиксКода>)
<ПрефиксКода> (необязательный)
Тип: Строка. Строковое значение префикса. Если префикс указан, то новый код будет формироваться с учетом префикса.
Описание:
Устанавливает новый код. Если в коде присутствует числовая часть, то новый код автоматически устанавливается следующим за имеющимся максимальным. При этом определяется текущий максимальный код среди элементов данного справочника.
Если передан префикс, то новый код устанавливается следующим образом: выполняется поиск максимального кода среди кодов, имеющих данный префикс, новый код выбирается как следующий от найденного кода.
Примечание: Префикс имеет смысл, если для справочника в конфигураторе выбран тип кода Строка.
Пример: Объект.УстановитьНовыйКод("XXY");
...
Рейтинг: 0 / 0
26.12.2011, 17:44
    #37593958
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
Все что описано исключительно для вновь создаваемых объектов или + для существующих?
...
Рейтинг: 0 / 0
26.12.2011, 18:04
    #37594001
Last1Cmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
XenoXВсе что описано исключительно для вновь создаваемых объектов или + для существующих?

для вновь созаданых
для тех что уже есть префикс не меняется (вообще код не меняется)
...
Рейтинг: 0 / 0
26.12.2011, 18:44
    #37594086
Kreontsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
Ничего не понял:
Т.е. имеем объект с кодом ХХ-000032
Необходимо его перезаписать с кодом ХХУ000001

Сначала:
есть нумерация:
ХХ-000031
ХХ-000032
Теперь создаем новый и надо сделать: ХХУ000001, используем : Объект.УстановитьНовыйКод("XXY"); , результат: ХХУ000001
Дальше новый создаем ХХ-000033
Дальше новый создаем ХХ-000034
Опять новый но хочем с другой нумерацией, используем Объект.УстановитьНовыйКод("XXY");, получаем ХХУ000002
и т.д.

Так?
...
Рейтинг: 0 / 0
26.12.2011, 19:13
    #37594144
Last1Cmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
KreontsaТак?

так хотелось бы
но УстановитьНовыйКод работает только для новых т.е. конструкция

Объект.УстановитьНовыйКод(НовыйПрефикс) у уже записаного объекта не отрабатывает к сожалению :(

ну очень не хотелось бы использовать велосипед в виде преобразования обрезаных без префикса строк к числам нахождения максимумов увеличения на единцу и генерации в строку опять для присвоения уже записаному объекту

можно было бы вывернуться и создать новый объект и его код присвоить записаному (новый объект не сохранять после этого конечно) так вот беда в том что код уже после записи ведь назначается в 8х :(

есть ещё выход наполовину... менять символ у кода в целом (скажем "-" на "У") но если будет создан новый "нормальный" объект и опять надо будет его перенумеровать то будет ругань на уникальность уже нового префикса (там такой код уже есть)
...
Рейтинг: 0 / 0
26.12.2011, 19:33
    #37594171
Kreontsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
Есть еще 4-й вариант:

ХХ-000031
ХХ-000032
YY-000033
ХХ-000034
YY-000035
ХХ-000036

А так пойдет, разрешат ? :)
++ безболезненно, просто и минимум программирования.
...
Рейтинг: 0 / 0
26.12.2011, 19:35
    #37594173
Last1Cmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
KreontsaЕсть еще 4-й вариант:

ХХ-000031
ХХ-000032
YY-000033
ХХ-000034
YY-000035
ХХ-000036

А так пойдет, разрешат ? :)
++ безболезненно, просто и минимум программирования.

вот от этого то и уйти надо

ХХ-000031
ХХ-000032
ХХ-000034
ХХ-000036

нумерация должна быть сплошная
не кассовые ордера но всёже :)
...
Рейтинг: 0 / 0
26.12.2011, 19:48
    #37594198
Kreontsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
никак не уйти. ведь если одну позицию с номером ХХ-000001 придется убрать (префикс другой), то придется сразу перенумеровать весь справочник?
А не проще тогда помечать на удаление (или другой свой какой то признак ставить) и создавать копию уже с префиксом нужным.
...
Рейтинг: 0 / 0
26.12.2011, 20:02
    #37594221
Kreontsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
Хотя вручную выборка следующего номера "другого" префикса очень просто делается:
ВЫБРАТЬ КОЛИЧЕСТВО(Справочник...)
из ..
где .. Справочник.Код ПОДОБНО &Префикс


---- Префикс = "ХХУ%"
...
Рейтинг: 0 / 0
27.12.2011, 09:03
    #37594718
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
KreontsaХотя вручную выборка следующего номера "другого" префикса очень просто делается:
ВЫБРАТЬ КОЛИЧЕСТВО(Справочник...)
из ..
где .. Справочник.Код ПОДОБНО &Префикс


---- Префикс = "ХХУ%"

И делать это в ПередЗаписью модуля объекта
...
Рейтинг: 0 / 0
28.12.2011, 14:41
    #37597184
Last1Cmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
8.2 УФ Установка нового префикса уже записаного объекта
эээ
извиняюсь за кипишь
работает установка нового кода у уже записаных
у меня в модуле объекта этого справочника была прописана установка нового кода ... переписал с учетом того если туда передается префикс то оставлять его
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / 8.2 УФ Установка нового префикса уже записаного объекта / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]