小弟最近試著用XS寫營益率評分標準(標準如下圖),但結果卻出現兩個問題一直無法解決,一個是分類錯誤,另一個則是分類等級欄是空白,這幾天改了又改雖有改善但問題還是存在,因小弟是自學XS,故想請版上先進高手或XS小編幫小弟看看問題是出在哪裡 ? 謝謝
if trueAll(getField("營業利益率", "Q") <> 0,4)//2025/11/07 結果(1591/1776)
then ret=1;
var:grade("");
grade="";
if average(getField("營業利益率", "Q"),4) < 0
or getField("營業利益率", "Q") < 0
then begin
grade=grade+"C";
end
else if getField("營業利益率", "Q")[1]*0.8 > getField("營業利益率", "Q")
or average(getField("營業利益率", "Q"),4) < 5
then begin
grade=grade+"B";
end
else if average(getField("營業利益率", "Q"),4) > 15
and trueAll(getField("營業利益率", "Q")[1]*0.8 < getField("營業利益率", "Q"),3)
or average(getField("營業利益率", "Q"),4) < 15 and average(getField("營業利益率", "Q"),4) > 10
and trueAll(getField("營業利益率", "Q")[1]*0.8 < getField("營業利益率", "Q"),3)
and getField("營業利益率", "Q") > getField("營業利益率", "Q")[1]
then begin
grade=grade+"AA";
end
else if average(getField("營業利益率", "Q"),4) < 15
and average(getField("營業利益率", "Q"),4) > 10
and trueAll(getField("營業利益率", "Q")[1]*0.8 < getField("營業利益率", "Q"),3)
or average(getField("營業利益率", "Q"),4) < 10
and average(getField("營業利益率", "Q"),4) > 5
and trueAll(getField("營業利益率", "Q")[1]*0.8 < getField("營業利益率", "Q"),3)
and getField("營業利益率", "Q") > getField("營業利益率", "Q")[1]
then begin
grade=grade+"A";
end
else if average(getField("營業利益率", "Q"),4) > 5
and countIf(getField("營業利益率", "Q")[1]*0.8 > getField("營業利益率", "Q")[2],2) >= 1
and getField("營業利益率", "Q") > getField("營業利益率", "Q")[1]*0.8
then begin
grade=grade+"BB";
end ;
outputField1(getField("營業利益率", "Q"),2,"營益率0");
outputField2(getField("營業利益率", "Q")[1],2,"營益率1");
outputField3(getField("營業利益率", "Q")[2],2,"營益率2");
outputField4(getField("營業利益率", "Q")[3],2,"營益率3");
outputField7(average(getField("營業利益率", "Q"),4),2,"平均營益率");
outputField8(grade,0,"等級");
outputField9(GetFieldpublishDate("營業利益率", "Q"),0,"最新季度");
6 評論