|   |   | 
| 
 | Задание префикса для документа | ☑ | ||
|---|---|---|---|---|
| 0
    
        Валидатор 04.02.14✎ 14:49 | 
        Есть документ ПКО - у него номер должен формироваться так:
 Берется префикс организации (П) + префикс кассы (ПК) + номер документа произвольно формирующийся, как сделать? ПередЗаписью в модуле делал так: ПервыйПрефикс = (Организация.Префикс); ВторойПрефикс = ЭтотОбъект.Касса.ттПодразделение.ттПрефиксКассовыхДокументов; ИтогПрефикс = ПервыйПрефикс+ВторойПрефикс; Если не ЭтоНовый() Тогда ЭтотОбъект.УстановитьНовыйНомер(); КонецЕсли; Но в итоге попадает префикс только организации (П) а не ППК как должно быть( | |||
| 1
    
        Валидатор 04.02.14✎ 14:51 | 
        ЭтотОбъект.УстановитьНовыйНомер(ИтогПрефикс );
 вот так точнее у меня | |||
| 2
    
        КРТЩ 04.02.14✎ 14:55 | 
        ПервыйПрефикс  =  (Организация.Префикс);
 ВторойПрефикс = ЭтотОбъект.Касса.ттПодразделение.ттПрефиксКассовыхДокументов; ИтогПрефикс = ПервыйПрефикс+ВторойПрефикс+Номер; Если ЭтоНовый() Тогда ЭтотОбъект.УстановитьНовыйНомер(ИтогПрефикс); КонецЕсли; | |||
| 3
    
        Рэйв 04.02.14✎ 14:57 | 
        (0)>> Если не ЭтоНовый() Тогда
 Зачем ты себе эту граблю положил? Жаждешь слышать нытье бухов, что у них номера доков постоянно меняются?:-) | |||
| 4
    
        Serg_1960 04.02.14✎ 15:15 | 
        Вообще-то, имхо, проверять нужно не ЭтоНовый(), а ЗначениеЗаполнено(Номер)... и не модуле формы или объекта, а в подписке ПриУстановкеНовогоНомераДокумента (если она есть).     | |||
| 5
    
        Рэйв 04.02.14✎ 15:18 | 
        (4)Мало ли что там юзверь изволил накарябать. А надо что бы было как надо - с префиксами     | |||
| 6
    
        Валидатор 04.02.14✎ 15:19 | 
        (2) у меня так же было, не работает, только префикс организации ставится     | |||
| 7
    
        salvator 04.02.14✎ 15:23 | 
        (6) Смотри в отладчике что во ВторойПрефикс попадает     | |||
| 8
    
        Валидатор 04.02.14✎ 15:24 | 
        (7) попадает префикс касс, как и должно быть     | |||
| 9
    
        Валидатор 04.02.14✎ 15:26 | 
        ПервыйПрефикс = КО
 Второй = П Итог = КОП ЭтотОбъект.УстановитьНовыйНомер(ИтогПрефикс); ИтогПрефикс = Коп, а при проведении дока остается просто КО | |||
| 10
    
        1Сергей 04.02.14✎ 15:27 | 
        (9) А номер меняется?     | |||
| 11
    
        Валидатор 04.02.14✎ 15:29 | 
        (1) я в передзаписью запихнул все это дело, и при каждой записи номер не меняется     | |||
| 12
    
        Жан Пердежон 04.02.14✎ 15:29 | 
        правильный ответ в (4)     | |||
| 13
    
        Валидатор 04.02.14✎ 15:33 | 
        (12) в этой подписке он отправляет меня в общие модуля, и там процедура:
 Процедура ПриУстановкеНовогоНомераДляДокументов(Источник, СтандартнаяОбработка, Префикс) Экспорт ДобавитьПрефиксОрганизации(Источник, Префикс); ДобавитьПрефиксУзла(Префикс); КонецПроцедуры | |||
| 14
    
        Валидатор 04.02.14✎ 15:33 | 
        ПервыйПрефикс  =  (Организация.Префикс);
 ВторойПрефикс = ЭтотОбъект.Касса.ттПодразделение.ттПрефиксКассовыхДокументов; Префикс = ПервыйПрефикс+ВторойПрефикс; ДобавитьПрефиксОрганизации(Источник, Префикс); ДобавитьПрефиксУзла(Префикс); и как то не особо изменилось( | |||
| 15
    
        Валидатор 04.02.14✎ 15:34 | 
        + если в документе нет кассы при формировании номера документа будет лететь ошибка     | |||
| 16
    
        Валидатор 04.02.14✎ 15:34 | 
        хотя можно добавить условие по типу значений, типа если РКО или ПКО тогда так, иначе как в типовом механизме было     | |||
| 17
    
        Валидатор 04.02.14✎ 15:42 | 
        все, сделал     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |