好的,我意识到这是一个非常小众的问题,但我希望这个过程足够简单......
我的任务是根据客户/订单信息创建一个数据文件。问题是,数据文件有 5 个产品的最大限制。
基本上,我得到我的数据,按 cust_id 分组,创建文件结构,在该循环中,按 product_id 分组,用新的产品信息重写以前的 file_struct 中的字段。在用户超过该最大值之前,这一切都很好。
一个简单的例子..(记住,数组的结构是由另一个进程设置的,这个不能改变)
orderArray = arranyew(2);
set order = 1;
loop over cust_id;
field[order][1] = "field(1)"; // cust_id
field[order][2] = "field(2)"; // name
field[order][3] = "field(3)"; // phone
field[order][4] = ""; // product_1
field[order][5] = ""; // quantity_1
field[order][6] = ""; // product_2
field[order][7] = ""; // quantity_2
field[order][8] = ""; // product_3
field[order][9] = ""; // quantity_3
field[order][10] = ""; // product_4
field[order][11] = ""; // quantity_4
field[order][12] = ""; // product_5
field[order][13] = ""; // quantity_5
field[order][14] = "field(4)"; // trx_id
field[order][15] = "field(5)"; // total_cost
counter = 0;
loop over product_id
field[order[4+counter] = productCode;
field[order[5+counter] = quantity;
counter = counter + 2;
end inner loop;
order = order + 1;
end outer loop;
就像我说的,在我有一个用户订购了超过 5 种产品之前,这一直很好。
我基本上想要做的是检查每个用户的产品数量是否大于 5,在文本字段中开始一个新行,但我不知道如何到达那里。
我已经尝试了很多修复,但没有给出我需要的结果。
如果有帮助,我可以发送整个文件,但我不想在这里全部发布。