in ui/src/app/components/object-detail/object-detail.component.ts [759:865]
setPkRows() {
this.pkArray = this.fb.array([])
this.pkOrderValidation()
var srcArr = new Array()
var spArr = new Array()
this.pkData.forEach((row) => {
if (row.srcIsPk) {
srcArr.push({
srcColName: row.srcColName,
srcDataType: row.srcDataType,
srcIsNotNull: row.srcIsNotNull,
srcIsPk: row.srcIsPk,
srcOrder: row.srcOrder,
srcId: row.srcId,
srcAutoGen: row.srcAutoGen
})
}
if (row.spIsPk) {
spArr.push({
spColName: row.spColName,
spDataType: row.spDataType,
spIsNotNull: row.spIsNotNull,
spIsPk: row.spIsPk,
spOrder: row.spOrder,
spId: row.spId,
spAutoGen: row.spAutoGen,
spDefaultValue: row.spDefaultValue
})
}
})
spArr.sort((a, b) => {
return a.spOrder - b.spOrder
})
for (let i = 0; i < Math.min(srcArr.length, spArr.length); i++) {
this.pkArray.push(
new FormGroup({
srcOrder: new FormControl(srcArr[i].srcOrder),
srcColName: new FormControl(srcArr[i].srcColName),
srcDataType: new FormControl(srcArr[i].srcDataType),
srcIsPk: new FormControl(srcArr[i].srcIsPk),
srcIsNotNull: new FormControl(srcArr[i].srcIsNotNull),
srcAutoGen: new FormControl(srcArr[i].srcAutoGen),
spOrder: new FormControl(spArr[i].spOrder, [
Validators.required,
Validators.pattern('^[1-9][0-9]*$'),
]),
spColName: new FormControl(spArr[i].spColName),
spDataType: new FormControl(spArr[i].spDataType),
spIsPk: new FormControl(spArr[i].spIsPk),
spIsNotNull: new FormControl(spArr[i].spIsNotNull),
spId: new FormControl(spArr[i].spId),
spAutoGen: new FormControl(spArr[i].spAutoGen),
spDefaultValue: new FormControl(spArr[i].spDefaultValue),
})
)
}
if (srcArr.length > Math.min(srcArr.length, spArr.length))
for (let i = Math.min(srcArr.length, spArr.length); i < srcArr.length; i++) {
this.pkArray.push(
new FormGroup({
srcOrder: new FormControl(srcArr[i].srcOrder),
srcColName: new FormControl(srcArr[i].srcColName),
srcDataType: new FormControl(srcArr[i].srcDataType),
srcIsPk: new FormControl(srcArr[i].srcIsPk),
srcIsNotNull: new FormControl(srcArr[i].srcIsNotNull),
srcAutoGen: new FormControl(srcArr[i].srcAutoGen),
srcId: new FormControl(srcArr[i].srcId),
spOrder: new FormControl(''),
spColName: new FormControl(''),
spDataType: new FormControl(''),
spIsPk: new FormControl(false),
spIsNotNull: new FormControl(false),
spId: new FormControl(''),
spAutoGen: new FormControl(spArr[i].spAutoGen),
spDefaultValue: new FormControl(spArr[i].spDefaultValue),
})
)
}
else if (spArr.length > Math.min(srcArr.length, spArr.length))
for (let i = Math.min(srcArr.length, spArr.length); i < spArr.length; i++) {
this.pkArray.push(
new FormGroup({
srcOrder: new FormControl(''),
srcColName: new FormControl(''),
srcDataType: new FormControl(''),
srcIsPk: new FormControl(false),
srcIsNotNull: new FormControl(false),
srcAutoGen: new FormControl({
Name: "",
GenerationType: ""
}),
srcId: new FormControl(''),
spOrder: new FormControl(spArr[i].spOrder),
spColName: new FormControl(spArr[i].spColName),
spDataType: new FormControl(spArr[i].spDataType),
spIsPk: new FormControl(spArr[i].spIsPk),
spIsNotNull: new FormControl(spArr[i].spIsNotNull),
spId: new FormControl(spArr[i].spId),
spAutoGen: new FormControl(spArr[i].spAutoGen),
spDefaultValue: new FormControl(spArr[i].spDefaultValue),
})
)
}
this.pkDataSource = this.pkArray.controls
}