Types PowerBuilder存在长、长、整数、十进制和十进制数据类型的问题

Types PowerBuilder存在长、长、整数、十进制和十进制数据类型的问题,types,decimal,powerbuilder,Types,Decimal,Powerbuilder,我在PowerBuilder 12.5 Classic中遇到长、长、整数、十进制和十进制数据类型的问题… 我做了类似的事情,给了我数据类型的问题 // set variables for item price and the cash given by the customer double price, cash price=double(trim(sle_price.text)) cash=double(trim(sle_cash.text)) if cash="" then

我在PowerBuilder 12.5 Classic中遇到长、长、整数、十进制和十进制数据类型的问题…
我做了类似的事情,给了我数据类型的问题

// set variables for item price and the cash given by the customer

double price, cash

price=double(trim(sle_price.text))
cash=double(trim(sle_cash.text))



if cash="" then
    messagebox("","CASH")
    sle_cash.setfocus()
    return
end if

if  fare="" then
    messagebox("","SET FARE")
    sle_amount.setfocus()
    return
end if
double balance

balance=cash -price


 messagebox("",balance)

INSERT INTO cash_table  
         ( items.price   

  VALUES ( :price );

我认为您正在将
双倍现金
双倍票价
变量与
“”(空字符串)
进行比较,以确定输入字段是否为空。您可以这样做,而不是那样做:

if trim(sle_cash.text)="" then
    messagebox("","CASH")
    sle_cash.setfocus()
    return
end if

if  trim(sle_fare.text)="" then
    messagebox("","SET FARE")
    sle_amount.setfocus()
    return
end if

我认为您正在将
双倍现金
双倍票价
变量与
“”(空字符串)
进行比较,以确定输入字段是否为空。您可以这样做,而不是那样做:

if trim(sle_cash.text)="" then
    messagebox("","CASH")
    sle_cash.setfocus()
    return
end if

if  trim(sle_fare.text)="" then
    messagebox("","SET FARE")
    sle_amount.setfocus()
    return
end if
从我的评论来看

为什么要把double和string进行比较

比较不同的类型是非法的。正确的例子

if trim(sle_cash.text) = "" then
从我的评论来看

为什么要把double和string进行比较

比较不同的类型是非法的。正确的例子

if trim(sle_cash.text) = "" then

您遇到了什么问题?为什么尝试将
double
string
进行比较?它给出:Error c0011表达式中不兼容的类型:double,string,通常,告诉我们哪一行抛出了错误也会有帮助(错误显示会显示行号,双击它也会跳到该行),但马克西姆斯已经发现了。将双变量cash与字符串常量“”进行比较将抛出此错误(如果cash=”“,则)。@Maximus IMHO您应得的胜利;您在问题描述完成之前调用了它!!为什么不发布一个答案(而不仅仅是一条评论),这样我们就可以在该评分的地方评分。您遇到了什么问题?为什么您尝试将
double
string
进行比较?它给出了错误c0011表达式中不兼容的类型:double,stringAnd,通常,告诉我们哪一行抛出了错误也会有所帮助(错误显示会显示行号,双击它也会跳到该行),但Maximus已经发现了它。将双变量cash与字符串常量“”进行比较将抛出此错误(如果cash=”“,则)。@Maximus IMHO您应得胜利;您在问题描述完成之前调用了它!!为什么不发布答案(而不仅仅是一句评论)这样我们就可以在应该得到赞扬的地方给予赞扬。