| 
    
            
         
         | 
    
    
  | 
Как написать функцию, при которой НомерДокумента = НомерПредыдущегоДокумента + 1 | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        King-SD    
     28.05.15 
            ✎
    07:58 
 | 
         
        Как написать функцию, при которой НомерДокумента = НомерПредыдущегоДокумента + 1   ??     
         | 
|||
| 
    1
    
        Галахад    
     гуру 
    28.05.15 
            ✎
    08:00 
 | 
         
        Типовая же есть.     
         | 
|||
| 
    2
    
        King-SD    
     28.05.15 
            ✎
    09:12 
 | 
         
        (1) Ну так какая? мне её всёравно переделать придётся     
         | 
|||
| 
    3
    
        AntiBuh    
     28.05.15 
            ✎
    09:14 
 | 
         
        ПриЗаписи номер дока в константу
 
        потом этаКонстанта + 1  | 
|||
| 
    4
    
        Фокусник    
     28.05.15 
            ✎
    09:15 
 | 
         
        (0) Чем не устраивает автоматическое присвоение нового номера средствами платформы 1С?     
         | 
|||
| 
    5
    
        LordCMEPTb    
     28.05.15 
            ✎
    09:17 
 | 
         
        Написать запрос, который возьмет выборку документов (возможно, только по нужной организации), взять из выборки максимальный номер, пройтись посимвольно по полученной строке, попутно изменяя 2 строковые переменные: "Префикс" и "НомерЧисловой". После разбора номера строковый "НомерЧисловой" перевести в число, прибавить единицу, перевести в строку с лидирующими нулями, соединить с префиксом...
 
        Ну или использовать "ДокументОбъект.УстановитьНовыйНомер()"  | 
|||
| 
    6
    
        pushok    
     28.05.15 
            ✎
    09:17 
 | 
         
        (4) да захотел. это уже достаточная причина.
 
        какая разница чем не устраивает? Может он лучше напишет  | 
|||
| 
    7
    
        ИС-2    
     28.05.15 
            ✎
    09:18 
 | 
         
        (0) если будут писать документы несколько пользователей, то нумерация рано или поздно задвоится. Надо делать блокировку константы, если делать как в (3)
 
        (3) можно каждый раз выполнять запрос, чтобы получить максимальный номер (только надо помнить по то, что обычно нумерация имеет периодичность 1 год)  | 
|||
| 
    8
    
        Heckfy    
     28.05.15 
            ✎
    09:18 
 | 
||||
| 
    9
    
        King-SD    
     28.05.15 
            ✎
    09:24 
 | 
         
        дело в том, что у меня идёт нумерация, пример: П00000А250,,,
 
        При типе документа - на реализацию, "А" меняется на "0",, и прибавляется единица,,, то есть получится номер П000000251,,, но потом я создаю документ с типом "На аванс", и у него должна присутствовать "А" в номере. По идее следующий документ должен быть с номером П00000А252, но он создаёт с номером П00000А251,,, так как А больше чем 0.. а мне нужно чтобы он производил операцию с поледним документом (7)  | 
|||
| 
    10
    
        fisher    
     28.05.15 
            ✎
    09:26 
 | 
         
        (0) Ой не советую. Это нетривиальная задача, которую придется решать либо через блокировки, либо через зопу. В любом случае ничего хорошего.
 
        (9) "А" у тебя должно быть частью префикса. Просто устанавливай правильный префикс при получении нового номера.  | 
|||
| 
    11
    
        fisher    
     28.05.15 
            ✎
    09:28 
 | 
         
        Вообще, правильный номер должен быть ПА0000252. В противном случае, мне интересно как ты будешь выкручиваться, когда количество документов достигнет тысячи. Правильно - все делать через префиксы. Если на печать нужно чуток по-другому выводить - просто формируй номер для печати в момент печати.     
         | 
|||
| 
    12
    
        Drac0    
     28.05.15 
            ✎
    09:32 
 | 
         
        (11) А еще лучше хранить где-то номер для печати. Вдруг логику поменяют, а старые документы понадобится перепечатать.     
         | 
|||
| 
    13
    
        King-SD    
     28.05.15 
            ✎
    09:37 
 | 
         
        (11) Мне нужно именно так как я писал. в отчёты так нормально выводиться будет - А250,  А если "А" будет как префикс, тогда выведется А00000250, а это не есть хорошо. Переделывать всяко придётся, но лучше уж это сделать здесь     
         | 
|||
| 
    14
    
        hhhh    
     28.05.15 
            ✎
    09:50 
 | 
         
        (13) но ведь правильно 250А     
         | 
|||
| 
    15
    
        King-SD    
     28.05.15 
            ✎
    09:51 
 | 
         
        (14) Ну я же не буду делать так как неправильно. У каждого своя учётная политика     
         | 
|||
| 
    16
    
        fisher    
     28.05.15 
            ✎
    09:52 
 | 
         
        (13) Читать умеешь? А думать? 
 
        Что проще: 1) рисовать свою подсистему нумерации (в чем ты разбираешься плохо, раз не осознаешь потенциальных проблем) 2) вместо А0000250 выводить на печать А250  | 
|||
| 
    17
    
        King-SD    
     28.05.15 
            ✎
    09:52 
 | 
         
        Есть идея чтобы он выбирал максимальный номер из тех, которые не сожержат "А" и к нему прибавлял 1.. Но как это грамотно оформить?     
         | 
|||
| 
    18
    
        VladZ    
     28.05.15 
            ✎
    09:54 
 | 
         
        (17) Зачем изобретать велосипед? Попробуй задачу "втиснуть в рамки конфигурации".     
         | 
|||
| 
    19
    
        King-SD    
     28.05.15 
            ✎
    09:55 
 | 
         
        (16) Мне выводить не только на печать, ещё оно в книге продаж должно правильно отображаться. А по моему формату оно всё чётко отображается. Переделывать много где придётся     
         | 
|||
| 
    20
    
        Масянька    
     28.05.15 
            ✎
    09:55 
 | 
         
        (17) Счет-фактура на аванс?     
         | 
|||
| 
    21
    
        King-SD    
     28.05.15 
            ✎
    09:55 
 | 
         
        (18) То есть???     
         | 
|||
| 
    22
    
        King-SD    
     28.05.15 
            ✎
    09:55 
 | 
         
        (20) Да.     
         | 
|||
| 
    23
    
        Масянька    
     28.05.15 
            ✎
    09:59 
 | 
         
        (22) Не городи огород. Сделай для СФ на аванс отдельный нумератор и не выноси мозг (ни себе, ни людям).     
         | 
|||
| 
    24
    
        King-SD    
     28.05.15 
            ✎
    10:01 
 | 
         
        (23) Я уж не настолько тугой, сделал бы если можно было отдельно. Сказали одна нумерация должна быть, Нельзя нам разные, вот и думаю сижу     
         | 
|||
| 
    25
    
        Масянька    
     28.05.15 
            ✎
    10:02 
 | 
         
        (24) О какое единой нумерации идет речь в (17)?
 
        Нельзя - почему?  | 
|||
| 
    26
    
        myk0lka    
     28.05.15 
            ✎
    10:02 
 | 
         
        (16) +100500
 
        Сделать функцию для возврата номера в нужном формате и не ломать штатную систему нумерации. Проще в нескольких печатных формах поправить одну строку, чем потом разгребать косяки.  | 
|||
| 
    27
    
        Вася Чез    
     28.05.15 
            ✎
    10:06 
 | 
         
        (24) хм, в типовой БП сквозная нумерация должна идти, даже если в настройках НДС префикс А поставил.     
         | 
|||
| 
    28
    
        Вася Чез    
     28.05.15 
            ✎
    10:08 
 | 
         
        (24) а вообще лучше не трогай типовую нумерацию, потом будут постоянно косяки всплывать, сделай как тебе в прошлой теме кто-то написал отдельный реквизит со своим номером и там твори что хочешь, эксперементируй и т.д. Если это желания бухов, то скажи чтобы шли на юх.     
         | 
|||
| 
    29
    
        VladZ    
     28.05.15 
            ✎
    10:18 
 | 
         
        (21) Нумерацию оставь как есть. Если бухи хотят видеть "А" в авансах - добавляй эту букву при выводе печ.формы. Это проще, чем заморачиваться с генерацией последующего номера.     
         | 
|||
| 
    30
    
        fisher    
     28.05.15 
            ✎
    10:19 
 | 
         
        (19) "Переделывать много где придется" = "в десятке-другом мест вставить одну строчку". 
 
        Если тебе кажется что альтернативный путь проще - что ж. Ты имеешь неотъемлемое право на собственные шишки. "Может быть через трещину в голове войдет хоть капелька ума" (с) Книга Джунглей  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |