{
  "eventsAndFunctions": [
    {
      "algorithm": {
        "parameters": [
          {
            "name": "args",
            "type": "ArgsLoadRecords"
          }
        ],
        "statements": [
          {
            "command": "Return",
            "expression": "getVendors(^args)"
          }
        ],
        "typeReturn": "any",
        "variables": []
      },
      "name": "gridVendors_loadRecords"
    },
    {
      "algorithm": {
        "parameters": [],
        "statements": [
          {
            "command": "Refresh",
            "widgetName": "gridVendors"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "list",
            "type": "any"
          }
        ]
      },
      "name": "mainResponsive_init"
    },
    {
      "algorithm": {
        "parameters": [],
        "statements": [
          {
            "command": "ReadModel",
            "modelVariableName": "salesTeamId",
            "variableName": "salesTeamId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "vendor",
            "variableName": "vendor"
          },
          {
            "children": [
              {
                "command": "GetValue",
                "variableName": "memberRoleId",
                "widgetName": "cbMemberRole"
              },
              {
                "command": "GetValue",
                "variableName": "validFrom",
                "widgetName": "dateValidFrom"
              },
              {
                "command": "GetValue",
                "variableName": "validTo",
                "widgetName": "dateValidTo"
              },
              {
                "children": [
                  {
                    "command": "Set",
                    "expression": "{ vendor: ^vendor, name: ^vendor.name}",
                    "variableName": "member"
                  },
                  {
                    "command": "Set",
                    "expression": "ExtPresales.SalesTeamHolderCreate(^salesTeamId, ^member)",
                    "variableName": "member"
                  }
                ],
                "command": "If",
                "expression": "!IsNull(^memberRoleId) && !IsNull(^validFrom)"
              },
              {
                "children": [
                  {
                    "command": "AlertMessage",
                    "expressionMessage": "\"[[MustSelectValidMemberData]]\"",
                    "expressionTitle": "\"[[ErrorMessage]]\"",
                    "severity": "error"
                  }
                ],
                "command": "Else"
              },
              {
                "command": "WriteModel",
                "expression": "null",
                "modelVariableName": "vendor"
              }
            ],
            "command": "If",
            "expression": "!IsNull(^vendor)"
          },
          {
            "children": [
              {
                "command": "AlertMessage",
                "expressionMessage": "\"[[MustSelectVendor]]\"",
                "expressionTitle": "\"[[ErrorMessage]]\"",
                "severity": "warning"
              }
            ],
            "command": "Else"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "salesTeamId",
            "type": "string"
          },
          {
            "name": "validFrom",
            "type": "date"
          },
          {
            "name": "validTo",
            "type": "date"
          },
          {
            "name": "memberRoleId",
            "type": "integer"
          },
          {
            "name": "vendor",
            "type": "ExtPresales.SalesTeamVendor"
          },
          {
            "name": "member",
            "type": "ExtPresales.SalesTeamVendorHolder"
          }
        ]
      },
      "name": "gridVendors_handlerAction_addSelectedAccount"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "recordRef",
            "type": "string"
          }
        ],
        "statements": [
          {
            "command": "ReadRecord",
            "expressionRecordRef": "^recordRef",
            "variableName": "vendor",
            "widgetName": "gridVendors"
          },
          {
            "command": "SendDataToParent",
            "expressionData": "{ vendor: ^vendor}"
          },
          {
            "command": "WriteModel",
            "expression": "^vendor",
            "modelVariableName": "vendor"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "vendor",
            "type": "ExtPresales.SalesTeamVendor"
          }
        ]
      },
      "name": "gridVendors_selectRecord"
    },
    {
      "algorithm": {
        "parameters": [],
        "statements": [
          {
            "command": "GetValue",
            "variableName": "name",
            "widgetName": "txtName"
          },
          {
            "command": "WriteModel",
            "expression": "^name",
            "modelVariableName": "name"
          },
          {
            "command": "Refresh",
            "widgetName": "gridVendors"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "name",
            "type": "string"
          }
        ]
      },
      "name": "btnSearch_click"
    },
    {
      "algorithm": {
        "parameters": [],
        "statements": [
          {
            "command": "ReadModel",
            "modelVariableName": "vendor",
            "variableName": "vendor"
          },
          {
            "children": [
              {
                "command": "Throw",
                "errorName": "Error",
                "expressionData": "\"[[Error]]\"",
                "expressionInnerError": "\"[[MustSelectVendor]]\""
              }
            ],
            "command": "If",
            "expression": "!IsNotNull(^vendor)"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "vendor",
            "type": "ExtPresales.SalesTeamVendor"
          }
        ]
      },
      "name": "main_submit"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "args",
            "type": "ArgsLoadRecords"
          }
        ],
        "statements": [
          {
            "command": "ReadModel",
            "modelVariableName": "salesTeamId",
            "variableName": "salesTeamId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "name",
            "variableName": "name"
          },
          {
            "command": "Set",
            "expression": "{ offset: ^args.offset, limit: ^args.limit, name: ^name}",
            "variableName": "argsList"
          },
          {
            "command": "Set",
            "expression": "ExtPresales.VendorList(^argsList)",
            "variableName": "vendors"
          },
          {
            "command": "Return",
            "expression": "^vendors"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "salesTeamId",
            "type": "string"
          },
          {
            "name": "name",
            "type": "string"
          },
          {
            "name": "partyData",
            "type": "MsBusiness.PartyData"
          },
          {
            "name": "argsList",
            "type": "ExtPresales.ArgsVendorList"
          },
          {
            "name": "vendor",
            "type": "ExtPresales.SalesTeamVendor"
          },
          {
            "name": "vendors",
            "type": "list(ExtPresales.SalesTeamVendor)"
          }
        ]
      },
      "name": "getVendors"
    }
  ],
  "model": [
    {
      "name": "salesTeamId",
      "required": true,
      "type": "string"
    },
    {
      "name": "name",
      "required": false,
      "type": "string"
    },
    {
      "name": "vendor",
      "required": false,
      "type": "ExtPresales.SalesTeamVendor"
    }
  ],
  "root": {
    "children": [
      {
        "children": [
          {
            "children": [
              {
                "label": "[[Name]]",
                "name": "txtName",
                "widget": "TextBox"
              },
              {
                "icon": "search.svg",
                "name": "btnSearch",
                "text": "[[Search]]",
                "widget": "Button"
              }
            ],
            "cssClass": "blz-padding-top blz-padding-bottom",
            "layout": "form"
          },
          {
            "actions": [],
            "columns": [
              {
                "align": "left",
                "bindText": "user.name",
                "header": "[[UserName]]",
                "key": "userName"
              },
              {
                "align": "left",
                "bindText": "name",
                "format": "Number",
                "header": "[[Name]]",
                "key": "name"
              },
              {
                "align": "left",
                "bindText": "status",
                "header": "[[Status]]",
                "key": "status"
              },
              {
                "align": "left",
                "bindText": "creationDate",
                "format": "DateTime",
                "header": "[[CreationDate]]",
                "key": "creationDate"
              }
            ],
            "name": "gridVendors",
            "pageSize": 10,
            "title": "[[Blank]]",
            "typeName": "ExtPresales.SalesTeamVendor",
            "widget": "Grid",
            "withPaging": true
          }
        ],
        "cssClass": "blz-padding-top blz-padding-right-small blz-padding-left blz-padding-bottom",
        "layout": "responsive",
        "size": 12
      }
    ],
    "layout": "responsive",
    "name": "mainResponsive"
  },
  "routing": null,
  "unused": []
}