Перейти к основному содержимому

FormBuilder v1

Самый простой способ добавлять поле, не зная его описание:

  • Ищем форму, в которой оно уже есть
  • Чтобы узнать название файла формы можно выполнить engymod(true); в браузерной консоли, и внизу формы будет полный путь до используемого файла, а так-же дополнительная полезная информация
  • Ищем нужный файл в xml менеджере и копируем поле

Как добавить Extra Field поле в клиента

Абсолютно тот-же принцип описания полей, как обычные, НО в названии(name) необходимо дописать extraField_. Например, extraField_hobby - будет созданно extraField поле hobby

Поведение/логика

ifExpression

Для всех компонентов можно задать выражение, результат которого будет влиять на видимость поля (true/false с максимальным приоритетом).

Как создать выражение

  1. В форме должен быть элемент expressions, если его нет, то нужно создать form > expressions. Аттрибутов для настройки нет.
  2. Объявляем выражение <expression name="example"> выражение </expression> в блоке form > expressions
  3. Используем выражение через ifExpression="example" в компонентах(а так-же в масках <mask>)

Пример:

<form name="loanapp">
<expressions>
<expression name="principalParts_show_fields"><![CDATA[
formModel['_principalParts_edit'] === true
]]></expression>
<expression name="principalParts_show_bar"><![CDATA[
formModel['_principalParts_edit'] !== true
]]></expression>
</expressions>
<layout>
<blade view="Contracts::form/principalParts-bar" ifExpression="principalParts_show_bar" name="creditFieldReq.principalParts"/>
<array name="creditFieldReq.principalParts" ifExpression="principalParts_show_fields">
<fields>
<field name="creditFieldReq.principalParts._.id" type="hidden"/>
<field name="creditFieldReq.principalParts._.trancheNo" type="integer"/>
<field name="creditFieldReq.principalParts._.part" type="float"/>
</fields>
</array>
</layout>
</form>
  • name - любое название, по которому будет получаться результат выражения
  • Чтобы спецсимволы ничего не поломали, рекомендуется всегда использовать обертку <![CDATA[ выражение ]]>

Доступные переменные для выражения:

  • formModel - Текущее состояние формы

Более детальная информация по выражениям в Expressions.md

Типы полей (type)

select

Статичный набор (options)

<field label='Клиент фокусник?' name='extraField_isMagician' type='select'>
<options>
<option value="yes">Да</option>
<option value="no">Нет</option>
<option value="mb">Возможно</option>
<option value="">Не заполнено</option>
</options>
</field>

<option value="">Не заполнено</option> - опционально. В текущей реализации будет отображаться, если поле статичное (не редактируемое), визуально поле как-будто будет заполненным(в статике). Если его не будет, то будет серая надпись Нет данных. Для соблюдения единого оформления лучше не заполнять значение по умолчанию, но вдруг очень надо.

Список доступных Enum

ProcessTypeKind
LegalEntityTypeKind
VerifiedKind
ActionTypeKind
ActorTypeKind
AmountMovingDirectionKind
ClosedContractStatusKind
ContractStatusKind
ClientTypeKind
DateCalcMethodKind
DepositTypeKind
FeeChargeBaseKind
FeeChargeMomentKind
InterestCalcMethodKind
InterestChargeMethodKind
InterestPaymentPeriodicityKind
InterestRateTypeKind
LoanStatusKind
LoanTypeKind
MaritalStatusKind
PaymentTypeKind
PaymentTypes
PenaltyTypeKind
PrincipalDistribMethodKind
RepaymentSequenceKind
ScoringRuleStepTypeFieldKind
ScoringRuleStepTypeKind
ScoringRecommendationKind
SelectBooleanKind
SexKind
StepTypeFieldKind
ValueTypeKind
WithdrawalTypes
ActionsReqSign
ForepaymentConsiderationMethodKind
CreditLineTypeKind
PersonTypeKind
CustomStatusKind

Список доступных справочников

Account
AmountType
CashOffice
SettlementAccount
Branch
Subdivision
Donor
LoanCategory
CreditOfficer
ContractAgent
ContractCollector
MergedShopAddress
ActivityTypes
AmountTypes
Banks
Branches
CashOffices
CollateralTypes
ContractCollectors
Countries
CreditOfficers
CreditProductGroups
CreditProducts
Currencies
DepositProducts
Donors
Educations
LegalEntities
Liabilities
Professions
Regions
Subdivisions
Users
CreditPurposes
GettingMoneyMethods
LoanDeniedRejections
LoanProcessingStatuses