0

PowerBuilder 12.5 Classic を使用して課金システムを開発しており、テキスト ボックスに 0 を設定する必要があります。vb.net txtchange.Text = 0 のように、
2 つのドロップダウン リスト ボックスがあります。

  1. ddlb_price (アイテムの価格値を定義)
  2. ddlb_cash (顧客から提供された現金の金額)
  3. sle_change (レジ係が顧客に与える釣り銭)

システムは、レジ担当者が現金を入力するときに sle_change の値を設定する必要があります。
1.これにより、構文エラーが発生します。

if cash=price then
    sle_fare.settext=0
   end if


2.これにより、「互換性のないタイプが割り当てられます」

    if cash=price then
      sle_fare.text=0
    end if
4

2 に答える 2

4

単一行編集 (sle) コントロールは、テキストを保持するように設計されています。数値を割り当てようとしています。sle に表示させたい場合は、数値を文字列に変更する必要があります。

sle_fare.text = "0" 

また

sle_fare.text = string(variableHere) 
于 2012-07-17T19:28:42.900 に答える
1

もう一度、一歩下がって実際の質問を無視し、代わりにデータウィンドウがどのように役立つかを見ていきます。

その背後にあるデータ型を持つコントロールが必要なようです。データウィンドウには、これらのタイプのコントロールがあります。データウィンドウの背後に SELECT ステートメントが必要ないことを忘れないでください。ストアド プロシージャ、Web サービス、またはデータ セットの背後に何もない (外部データウィンドウ) ことができます。背後に数値データ型のコントロールがあると、(無料で) いくつかの基本的な編集コントロールを取得できます。たとえば、フィールドに英字を許可しない、入力値が実際に数値であることを確認するなどです (例: "0-.2.1 " 失敗します)。

その先にあるのは、今後の要件の 1 つである変化の計算です。データウィンドウでは、価格と現金が入力されると、おつりを自動的に計算する式を使用して計算を作成できます。

進めている方法で物事を行うことができないと言いたいわけではありませんが、データウィンドウを使用すると、他のアプローチよりも多くの問題を取り除くことができます。PowerBuilder の強みはデータウィンドウにあります。

幸運を、

テリー

于 2012-07-18T15:04:43.883 に答える