|   |   | 
| 
 | Префикс | ☑ | ||
|---|---|---|---|---|
| 0
    
        Начинающий_13 19.06.14✎ 13:15 | 
        Здравствуйте
 Не типовая. Сказали сделать префиксы. Префиксы хранятся в Периодическом регистре сведеий. Дата Префикс 2012 ТМ 2014 УФ Если Даты документа с 2012 года, то все работает отлично. Если ставлю допустим ДО 2012, то записывает префикс последний УФ. Как написать исключение, что бы ставил просто номер документа без префикса.Вроде все попробовал не получается Процедура ПриУстановкеНовогоНомера(СтандартнаяОбработка, Префикс) СведенияОбОрганизации = ПериодическиеРеквизиты.СведенияОбОрганизации(Дата); Префикс = СведенияОбОрганизации.Префикс; Если ПустаяСтрока(Префикс) Тогда Префикс = ""; Префикс = Префикс; Сообщить("Префикс пуст"); КонецЕсли; Если СведенияОбОрганизации.Префикс <> Неопределено Тогда Префикс = Префикс; КонецЕсли; ОбновитьНумерациюОбъектов(Метаданные.Документы.АвансовыйОтчет); КонецПроцедуры | |||
| 1
    
        Wobland 19.06.14✎ 13:17 | 
        копать здесь: ПериодическиеРеквизиты.СведенияОбОрганизации(Дата);     | |||
| 2
    
        Cube 19.06.14✎ 13:18 | 
        (0) Ошибка в ПериодическиеРеквизиты.СведенияОбОрганизации(Дата);
 А не в том, что ты привел... | |||
| 3
    
        Wobland 19.06.14✎ 13:18 | 
        >Префикс = Префикс;
 а это, конечно, прекрасно | |||
| 4
    
        Начинающий_13 19.06.14✎ 13:18 | 
        Хорошо сейчас поколдую     | |||
| 5
    
        Cube 19.06.14✎ 13:19 | 
        (3) Ага, мне тоже понравилось))     | |||
| 6
    
        Начинающий_13 19.06.14✎ 13:20 | 
        (3) Назову потом по другому     | |||
| 7
    
        Wobland 19.06.14✎ 13:21 | 
        Префикс=ПериодическиеРеквизиты.СведенияОбОрганизации(Дата).Префикс;
 предлагать? одна строчка | |||
| 8
    
        РенеДекарт 19.06.14✎ 13:27 | 
        (7) не надо.
 У человека еще исключение на Префикс = Префикс; не написано )) | |||
| 9
    
        РенеДекарт 19.06.14✎ 13:28 | 
        Вот это тоже шедевр:
 Если ПустаяСтрока(Префикс) Тогда Префикс = "" ... | |||
| 10
    
        РенеДекарт 19.06.14✎ 13:29 | 
        + ну и без этого тут тоже никуда:
 ...Префикс = Префикс; | |||
| 11
    
        Рэйв 19.06.14✎ 13:30 | 
        (0)Судя по издевательству над переменной Префикс - у тебя проблемы с пониманием базовых принципов программирования:-)
 Может это не твое? | |||
| 12
    
        Wobland 19.06.14✎ 13:30 | 
        дарю:
 Попытка Префикс = ""; Исключение Сообщить("Ошибка установки префикса: "+ОписаниеОшибки()); КонецПопытки; Попытка Префикс = Префикс; Исключение Сообщить("Ошибка установки префикса: "+ОписаниеОшибки()); КонецПопытки; | |||
| 13
    
        Fragster гуру 19.06.14✎ 13:30 | 
        (9) пустаяСтрока("          ") = истина, но непонятно почему не сокрлп, да     | |||
| 14
    
        Wobland 19.06.14✎ 13:31 | 
        (9) удаление незначащих символов     | |||
| 15
    
        Fragster гуру 19.06.14✎ 13:31 | 
        Префикс = ?(Префикс = Префикс,Префикс,Префикс);     | |||
| 16
    
        Рэйв 19.06.14✎ 13:33 | 
        Префикс=ЗначениеИзСтрокиВнутр(ЗначениеВСтрокуВнктр(Префикс))
 :-) | |||
| 17
    
        kosts 19.06.14✎ 13:35 | 
        (0) Всё не читал. В типовых префикс может устанавливаться в подписке, т.е. действие твоей процедуры может быть будет перебито в подписке.     | |||
| 18
    
        РенеДекарт 19.06.14✎ 13:36 | 
        (17)>> Всё не читал. 
 зря ) | |||
| 19
    
        Wobland 19.06.14✎ 13:36 | 
        ПрефиксПрефикс="";
 Для й=1 По СтрДлина(Префикс) Цикл ПрефиксПрефикс=ПрефиксПрефикс+Сред(Префикс, й, 1); КонецЦикла; Префикс=ПрефиксПрефикс; | |||
| 20
    
        kosts 19.06.14✎ 13:37 | 
        (19) Угадай песню по коду...     | |||
| 21
    
        РенеДекарт 19.06.14✎ 13:37 | 
        (11)>>Судя по издевательству над переменной Префикс
 не, ну может ему сказали, что у 1С а ж с 6-ой версии проблемы с присвоением перменных бывают.... вот и перестраховывается своим, оригинальным способом... | |||
| 22
    
        Cube 19.06.14✎ 13:37 | 
        (15) Зачёт! XD     | |||
| 23
    
        Fragster гуру 19.06.14✎ 13:39 | 
        Если СведенияОбОрганизации.Префикс = Неопределено Тогда
 Префикс = "00"; Иначе Префикс = СведенияОбОрганизации.Префикс КонецЕсли; | |||
| 24
    
        Fragster гуру 19.06.14✎ 13:39 | 
        все остальное нафиг     | |||
| 25
    
        Fragster гуру 19.06.14✎ 13:39 | 
        ну, или "000", смотря сколько там у автора длина     | |||
| 26
    
        Fragster гуру 19.06.14✎ 13:46 | 
        вот у меня проблема так и идет. v8: Задолбало "Значение поля номер не уникально"
 даже сделал сбор статистики глюков - глючит только в клиентсерверном варианте, может кто зависимость заметит: http://wstaw.org/m/2014/06/19/1_1.png | |||
| 27
    
        Cube 19.06.14✎ 13:51 | 
        (26) Тебе в 61 посте правильно сказали - у тебя проблема в префиксах. Отключи автонумерацию у документа, а не у формы и, я думаю, проблемы твои кончатся...     | |||
| 28
    
        Fragster гуру 19.06.14✎ 13:54 | 
        (27) в (61) посте немного по другому     | |||
| 29
    
        Fragster гуру 19.06.14✎ 13:56 | 
        но счас попробую, как раз сегодня обновление по плану будет     | |||
| 30
    
        Cube 19.06.14✎ 13:56 | 
        (28) В посте сказано, что проблема в префиксах - и это правда. Смысл в автонумерации, если ты номер присваиваешь сам? Отключи её (только не у формы, а у объекта) и платформа перестанет пытаться присвоить новый неправильный номер и ругаться на это. Я так считаю.     | |||
| 31
    
        Fragster гуру 19.06.14✎ 13:58 | 
        (30) я таки правильно понимаю, что в таком случае "установитьНовыйНомер" надо вручную вызывать?     | |||
| 32
    
        Fragster гуру 19.06.14✎ 13:59 | 
        или ты про то, чтобы искать самому запросом через Подобно "Префикс% Порядок Номер Убыв"?     | |||
| 33
    
        Cube 19.06.14✎ 14:00 | 
        (31) Хз, проверь))     | |||
| 34
    
        Fragster гуру 19.06.14✎ 14:04 | 
        (33) ну, сам он не присваивается     | |||
| 35
    
        Fragster гуру 19.06.14✎ 14:39 | 
        прикольно. если снять галку, то еще и при копировании номер также копируется.     | |||
| 36
    
        РенеДекарт 19.06.14✎ 14:42 | 
        (34) или вызови "установитьНовыйНомер" - и получишь то, что делает автонумерация, или пронумеруй сам.     | |||
| 37
    
        Fragster гуру 19.06.14✎ 14:44 | 
        (36) ну так в чем тогда смысл (30)? что так вызовется, что так. ну, сейчас пока поместил вызов УстановитьНовыйНомер + очистку номера при копировании, посмотрим, что получится.     | |||
| 38
    
        Fragster гуру 19.06.14✎ 14:44 | 
        вообще фигня какая-то     | |||
| 39
    
        РенеДекарт 19.06.14✎ 14:47 | 
        (37)>> сейчас пока поместил вызов УстановитьНовыйНомер + очистку номера при копировании
 зачем, сразу свой писать. А УстановитьНовыйНомер - это если свой док + обработка номера при создании. | |||
| 40
    
        РенеДекарт 19.06.14✎ 14:48 | 
        (37)>> ну так в чем тогда смысл (30)
 смысл в том, что платформа пытается присвоить автономер, который присвоить не может. В 1С такое (и не только такое) бывает на каждом шагу. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |