Инструменты пользователя

Инструменты сайта


lss-server-php:datasource-fields

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
lss-server-php:datasource-fields [2024/07/12 09:21] – [описатели полей REF] madminlss-server-php:datasource-fields [2026/06/02 12:25] (текущий) – [Справочники] madmin
Строка 5: Строка 5:
 ==== Общие описатели ==== ==== Общие описатели ====
   * **name** - имя поля, обязательный параметр   * **name** - имя поля, обязательный параметр
-  * **type** - тип поля в терминах LSS: string, password, status, memo, date, num, check, ref, list, icons, radio, multilist, html+  * **type** - тип поля в терминах LSS: string, password, status, memo, date, datetime, num, check, ref, list, icons, radio, multilist, html
   * **caption** - название поля в понятном человеку виде   * **caption** - название поля в понятном человеку виде
   * **len** - отображаемая ширина поля в символах   * **len** - отображаемая ширина поля в символах
Строка 15: Строка 15:
 ==== Числа ==== ==== Числа ====
   * **dec** - кол-во знаков после запятой   * **dec** - кол-во знаков после запятой
 +  * **numsep** = 0|1 - при отображении отделять тысячи (по 3 знака) неразрывным пробелом
 +  * **hidezero** = 0|1 - нулевые значения отображать как пробел (пусто)
 +==== datetime ====
 +  * **dec** - точность хранения времени
 +    * 0: часы:минуты
 +    * 1: часы:минуты:секунды
 +    * 2: часы:минуты:секунды.мс
 ==== Справочники ==== ==== Справочники ====
 Параметры поля type="ref" Параметры поля type="ref"
   * **reftable** - имя источника данных справочника. В терминах LSS **datasource** элемента **ref**   * **reftable** - имя источника данных справочника. В терминах LSS **datasource** элемента **ref**
 +  * **emptyformat** = 'null' | '0' | '' - пустое значение для поля справочника в БД, по умолчанию null
   * **refrowtype** - означает, что справочник является деревом. Задает тип узла, из которого можно выбирать значения. В терминах LSS **row.type** элемента **ref**   * **refrowtype** - означает, что справочник является деревом. Задает тип узла, из которого можно выбирать значения. В терминах LSS **row.type** элемента **ref**
   * **ref.params** - массив, задает значения параметров при вызове справочника. Если значение параметра начинается с **get(** или **getplus(** то значение подставляется в **js_value** и добавляется **skipempty=1**, иначе значение подставляется в **value**. Например:   * **ref.params** - массив, задает значения параметров при вызове справочника. Если значение параметра начинается с **get(** или **getplus(** то значение подставляется в **js_value** и добавляется **skipempty=1**, иначе значение подставляется в **value**. Например:
Строка 43: Строка 51:
   * **reftext** - имя поля справочника, отображаемого в диалоге выбора значений, если не задано, то из refname   * **reftext** - имя поля справочника, отображаемого в диалоге выбора значений, если не задано, то из refname
   * **dlgwidth** - ширина диалога выбора значения из справочника   * **dlgwidth** - ширина диалога выбора значения из справочника
 +
 ==== Списки: list, radio, icons ==== ==== Списки: list, radio, icons ====
   * **list** - список значений, разделенный ',' или ';'. Возможны варианты:   * **list** - список значений, разделенный ',' или ';'. Возможны варианты:
Строка 65: Строка 74:
   * **info** - дополнительная служебная информация в виде массива (ключ=значение). Используется для спецобработки на сервере.   * **info** - дополнительная служебная информация в виде массива (ключ=значение). Используется для спецобработки на сервере.
  
-===== Параметры поля в экранной форме "структура БД" =====+===== Параметры поля в экранной форме "LSS описание БД" =====
 В экранной форме "структура БД" описывается таблицы и поля базы данных. По этим описателям генерятся контроллеры источников данных - описатели полей, SQL запросы к таблицам. В экранной форме "структура БД" описывается таблицы и поля базы данных. По этим описателям генерятся контроллеры источников данных - описатели полей, SQL запросы к таблицам.
  
Строка 83: Строка 92:
   * **ref_join** - подстраивает поведение связи при выполнении **join**. Стандартное поведение: подменять ссылки для **restrict** связей и удалять для **cascade**. Если параметр задан, то поведение зависит не от типа связи а от значения этого параметра. Значения 1, r, R означают подмену ссылок, все остальное означает удаление.   * **ref_join** - подстраивает поведение связи при выполнении **join**. Стандартное поведение: подменять ссылки для **restrict** связей и удалять для **cascade**. Если параметр задан, то поведение зависит не от типа связи а от значения этого параметра. Значения 1, r, R означают подмену ссылок, все остальное означает удаление.
   * **ref_copy** - подстраивает поведение связи при выполнении **copy**. Стандартное поведение: копировать только для **cascade** связей. Если параметр задан, то поведение зависит не от типа связи а от значения этого параметра. Значения 1, c, C означают копирование.   * **ref_copy** - подстраивает поведение связи при выполнении **copy**. Стандартное поведение: копировать только для **cascade** связей. Если параметр задан, то поведение зависит не от типа связи а от значения этого параметра. Значения 1, c, C означают копирование.
-  * **logparent** - при любом изменении в строке отписывать в лог родительской таблицы по этой ссылке. Если значение 1, то имя в логе совпадает с именем таблицы, иначе значение задает имя в логе+  * **ref_logparent** - при любом изменении в строке отписывать в лог родительской таблицы по этой ссылке. Если значение 1, то имя в логе совпадает с именем таблицы, иначе значение задает имя в логе 
 +  * **ref_readonlytest** - при правке у удалении строки проверять признак row.readonly строки связанного источника данных. 
 +  * **ref_disabled** - при автогенерации источника данных, не подцеплять к этому полю связанные таблицы в SQL запросе
 ==== стандартные описатели ==== ==== стандартные описатели ====
   * **change** - при изменении поля отсылать запрос change или выполнять очистку полей   * **change** - при изменении поля отсылать запрос change или выполнять очистку полей
Строка 103: Строка 114:
 </code> </code>
   * **save** - 1|0 при изменении значения поля автоматически вызывать запрос save   * **save** - 1|0 при изменении значения поля автоматически вызывать запрос save
-  * **default** - значение поля по умолчанию, используется при выполнении append и в фильтрах 
   * **info** - произвольная информация вида cod=значение. Перенесется в описатель поля fld   * **info** - произвольная информация вида cod=значение. Перенесется в описатель поля fld
-==== списки: list, radio, icons ==== 
-  * **list** - для типов **list**, **radio** и **icons** содержит список допустимых значений 
-<code> 
-code1=Значение 1;code2=Значение 2 
-</code> 
-<code> 
-Значение 1;Значение 2 
-</code> 
-  * **basetype** - string|num 
  
 ==== видимость и доступность ==== ==== видимость и доступность ====
   * **readonly** - 1|0 можно объявить поле readonly   * **readonly** - 1|0 можно объявить поле readonly
   * **js_readonly** - можно объявить поле readonly в зависимости от условия: get('mode_code')=='ОТКЛ'   * **js_readonly** - можно объявить поле readonly в зависимости от условия: get('mode_code')=='ОТКЛ'
-  * **visible** - 0|1 можно сделать поле невидимым 
-  * **js_visible** - можно сделать поле невидимым в зависимости от условия: get('mode_code')!='ОТКЛ' 
  
 ==== описатели полей MAIN при подключении их в справочник ==== ==== описатели полей MAIN при подключении их в справочник ====
Строка 126: Строка 125:
   * **dlgwidth** - при подключении поля как справочник задает значение dlgwidth   * **dlgwidth** - при подключении поля как справочник задает значение dlgwidth
   * **refcaption** - 1|0 при подключении поля как справочник брать caption из поля ссылки (type=ref)   * **refcaption** - 1|0 при подключении поля как справочник брать caption из поля ссылки (type=ref)
- +==== дополнительно ==== 
 +  * **skipdatamodelcheck** - <код ошибки> игнорировать ошибку отчета "проверки модели данных" по этому полю 
 +==== Расширенный описатель info ==== 
 +Описатель info позволяет пополнить описание поля массивом вида имя=значение. Имена могут быть произвольными. Однако, некоторые имена обрабатываются особым образом - подменяют описатели поля. Вот список таких имен: 
 +  * refid 
 +  * refname 
 +  * visible 
 +  * js_visible 
 +  * default 
 +  * hidden 
 +  * basetype 
 +  * hidezero 
 +  * numsep 
 +  * emptyformat
  
lss-server-php/datasource-fields.1720765286.txt.gz · Последнее изменение: 2024/07/12 09:21 — madmin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki