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

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