Создать ведущий ноль в Oracle
Я использую Adempiere
у которого есть база данных Oracle
У меня окно называется Stock Code
из таблицы называется M_StockCode
Поля Code
а также Description
,
В настоящее время, Code
тип данных Number
а также Description
является Varchar2
Я хочу ввести Sparepart
с Code
01
, а также Body Repair
с Code
02
,
Когда я ввожу данные в Adempiere и сохраняю их, будет показано Sparepart
с Code
1
(без нуля в начале)
Я пытался положить LPAD
функционировать, но все равно не удалось.
Как поставить 01 как в интерфейсе Adempiere, так и в базе данных?
Любое предложение будет оценено:)
2 ответа
НОМЕР не может иметь начальный ноль, STRING может.
Если вы хотите сохранить коды с начальным нулем в таблице базы данных, вы должны использовать VARCHAR2, а не NUMBER.
Если вы хотите просто отобразить число с начальным нулем, используйте TO_CHAR для преобразования числа в строку.
Например,
SQL> SELECT TO_CHAR(1, '00') FROM DUAL;
TO_
---
01
Вы также можете использовать LPAD, но помните, что типом данных результата будет строка, а не число.
Например,
SQL> SELECT LPAD(1, 2, '0') FROM DUAL;
LP
--
01
В Adempiere вы управляете моделью через словарь приложений, это эквивалент словаря данных, используемого реляционными базами данных.
- Войдите в Adempiere как системный администратор.
- Выберите пункт меню
Application Dictionary->Table & Column
, - Выберите таблицу M_StockCode и в ее окне нажмите на вкладку " Столбцы".
- Здесь выберите столбец Код и при необходимости переключитесь в представление формы.
- Теперь, из раскрывающегося списка выберите эталонное значение строки и установить длину, равную 2.
- Наконец, нажмите
Synchronize Column
кнопка, чтобы Admepiere изменить базу данных.
Если этот код является своего рода классификацией, возможно, было бы полезно создать новый справочный тип в словаре приложений, а затем указать на него свой столбец; это обеспечило бы согласованность, предлагая пользователю выбор, а не ввод значений. Ссылка может быть типом " Список ", который удобен для коротких списков, или "Управляемый таблицей", который полезен, когда классификация более изменчива и требует поддержки пользователями.