Формула для записей нумерации - PullRequest
0 голосов
/ 05 декабря 2011

У меня есть клиент, который позволяет пользователям указывать определенный формат для записей. Не идентификатор, но так же хорошо, как.

Таким образом, пользователь может выбрать формат, скажем

  • гггг-1-ые 3 часа имени клиента, следующий доступный номер файла

или

  • инициалы файлового менеджера, следующий номер файла, гг

или

  • следующий номер файла, гггг, инициалы файлового менеджера

они также могут добавлять больше предметов, чтобы вы могли получить

  • следующий номер файла -гггг-инициалы клиентов-инициалы -ггг

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

Особенно если учесть, что клиент может

  • изменить формат в любое время
  • следующий номер файла должен быть следующим.

Я думаю, что важная часть, которую я здесь упускаю, - это создание запроса, дающего мне "следующий номер файла", если записи уже есть.

редактировать

не ограничивается sql. Я просто не могу придумать решение, которое позволит мне сохранить число в произвольном формате, а затем сгенерировать следующее число на основе этого формата.

Ответы [ 2 ]

1 голос
/ 05 декабря 2011

Я не совсем понимаю, что вы имеете в виду, но это может вас просветить.

Вот что я мог бы сделать:


typedef struct tagRecord
{
Date (dd/mm/yyyy)
Initials_Client
Initials_FileManager
Next_File_Number
} Record;
...

Let: <br>d = Date, ci = Initials_Client, fmi = Initials_FileManager, nfn = Next_File_Number

SelectFormat(record[0], "dci"); // Display Date and Initials_Client

Output: <br>12/4/2011 MH

or

SelectFormat(record[0], "cid"); // Initials_Client and Display Date

Output: <br>MH 12/4/2011

Если вам нужно больше псевдокода, пожалуйста, спросите.

1 голос
/ 05 декабря 2011

Что мы требуем от наших пользователей - это переформатировать существующие записи, когда они меняют формат.Когда формат изменяется, мы знаем старый формат и новый формат, поэтому мы можем обновить существующие записи.

Если номер визуальной записи является неотъемлемой частью ваших операций и должен быть сохранен, я бы тогда оставил теневую копию в записи, которая содержит номер записи, отформатированный в соответствии с текущим форматом.Вы можете обновить это во всех записях, когда формат изменяется, и поиск следующего доступного числа теперь является простым оператором выбора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...