setFkRows()

in ui/src/app/components/object-detail/object-detail.component.ts [1314:1398]


  setFkRows() {
    this.fkArray = this.fb.array([])
    var srcArr = new Array()
    var spArr = new Array()
    this.fkData.forEach((fk) => {
      srcArr.push({
        srcName: fk.srcName,
        srcColumns: fk.srcColumns,
        srcRefTable: fk.srcReferTable,
        srcRefColumns: fk.srcReferColumns,
        srcOnDelete: fk.srcOnDelete,
        srcOnUpdate: fk.srcOnUpdate,
        Id: fk.srcFkId,
      })
      if (fk.spName != '') {
        spArr.push({
          spName: fk.spName,
          spColumns: fk.spColumns,
          spRefTable: fk.spReferTable,
          spRefColumns: fk.spReferColumns,
          spOnDelete: fk.spOnDelete,
          spOnUpdate: fk.spOnUpdate,
          Id: fk.spFkId,
          spColIds: fk.spColIds,
          spReferColumnIds: fk.spReferColumnIds,
          spReferTableId: fk.spReferTableId,
        })
      }
    })
    for (let i = 0; i < Math.min(srcArr.length, spArr.length); i++) {
      this.fkArray.push(
        new FormGroup({
          srcFkId: new FormControl(srcArr[i].Id),
          spFkId: new FormControl(spArr[i].Id),
          spName: new FormControl(spArr[i].spName, [
            Validators.required,
            Validators.pattern('^[a-zA-Z]([a-zA-Z0-9/_]*[a-zA-Z0-9])?'),
          ]),
          srcName: new FormControl(srcArr[i].srcName),
          spColumns: new FormControl(spArr[i].spColumns),
          srcColumns: new FormControl(srcArr[i].srcColumns),
          spReferTable: new FormControl(spArr[i].spRefTable),
          srcReferTable: new FormControl(srcArr[i].srcRefTable),
          spReferColumns: new FormControl(spArr[i].spRefColumns),
          srcReferColumns: new FormControl(srcArr[i].srcRefColumns),
          spOnDelete: new FormControl(spArr[i].spOnDelete),
          srcOnDelete: new FormControl(srcArr[i].srcOnDelete),
          spOnUpdate: new FormControl(spArr[i].spOnUpdate),
          srcOnUpdate: new FormControl(srcArr[i].srcOnUpdate),
          Id: new FormControl(spArr[i].Id),
          spColIds: new FormControl(spArr[i].spColIds),
          spReferColumnIds: new FormControl(spArr[i].spReferColumnIds),
          spReferTableId: new FormControl(spArr[i].spReferTableId),
        })
      )
    }

    if (srcArr.length > Math.min(srcArr.length, spArr.length))
      for (let i = Math.min(srcArr.length, spArr.length); i < srcArr.length; i++) {
        this.fkArray.push(
          new FormGroup({
            spName: new FormControl('', [
              Validators.required,
              Validators.pattern('^[a-zA-Z]([a-zA-Z0-9/_]*[a-zA-Z0-9])?'),
            ]),
            srcName: new FormControl(srcArr[i].srcName),
            spColumns: new FormControl([]),
            srcColumns: new FormControl(srcArr[i].srcColumns),
            spReferTable: new FormControl(''),
            srcReferTable: new FormControl(srcArr[i].srcRefTable),
            spReferColumns: new FormControl([]),
            srcReferColumns: new FormControl(srcArr[i].srcRefColumns),
            spOnDelete: new FormControl(''),  //check if this needs to be changed
            srcOnDelete: new FormControl(srcArr[i].srcOnDelete),
            spOnUpdate: new FormControl(''),
            srcOnUpdate: new FormControl(srcArr[i].srcOnUpdate),
            Id: new FormControl(srcArr[i].Id),
            spColIds: new FormControl([]),
            spReferColumnIds: new FormControl([]),
            spReferTableId: new FormControl(''),
          })
        )
      }
    this.fkDataSource = this.fkArray.controls
  }