問題タブ [infoview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - Oracle SQLでユーザー・プロンプトを日付(または文字列)として渡す
Oracle SQL データベース上で動作する Business Objects を使用しています。PL やあらゆる種類の SQL コマンド ラインへのアクセス権がなく、データベースへの書き込みアクセス権もありません。クエリは単一のコマンドとしてのみ実行でき、定義された一連の列を出力する必要があります。
SQL に次のように表示されるユーザー プロンプトからデータを取得できます。
たとえば、次のように言えます。
これは簡単です。実行されます。ユーザーにいくつかの日付を入力するように要求します。そして、それらの間にあるすべての一致を返します (包括的)。
ただし、問題は、ユーザーが Business Objects の「Infoview」システムを使用してクエリを実行し、プロンプト システムが日付ピッカーを表示することです。これには、デフォルトで日付の時刻部分 (「01/01/2016 12 :00:00 AM")。
ユーザーが時間部分を削除しないと、SomeDate 値が選択した時間外になると、レコードが失われる可能性があります。たとえば、TODAY のすべてのレコードを取得する場合、技術的には 00:00:00 (真夜中) から 23:59:59 までのすべてのレコードが必要です。
私が本当にできるようにしたいのは、次のように、クエリ変数の周りに TRUNC を使用することです。
...ただし、これによりコンパイルエラーが発生します:「矛盾したデータ型: 予想される DATE は NUMBER を取得しました」。コンパイルする前に Oracle がプロンプトを数値データ型として扱う理由がわかりません。
@variable 値を取得して、日付値に切り捨てることができるものに変換する方法を知っている人はいますか?
したがって、私はこれを回避する方法を見つけようとしています。私が念頭に置いていたことの 1 つは、TO_DATE を使用して、prompt 変数を明示的に日付に変換できるかどうかでした。
編集:「12:00:00 AM」はすでに真夜中であるため、TRUNCは効果がないことが指摘されています。したがって、TRUNCを誤解していると思います。真夜中に切り捨てられているようです: 日付の時刻部分を完全に削除しただけだと思っていましたが、00:00:00 から 23:59:59 までの任意の時刻に一致が返されることを意味します。
私が本当に欲しいのは、たとえば SomeDate に 11:03 の時間部分がある場合、End Date プロンプトがその日のみを指定しているときに、これが確実に含まれるようにするにはどうすればよいかということです。
ios - コントローラと情報ビューを通信できません
Collection View コードを処理するこの TatodexController があります。API 呼び出しからデータを取得し、ポケモン変数に保存します。この var は、すべてのポケモンのすべての属性 (名前、身長、能力など) を保持する Pokemon 構造体でデコードされます。
私の CollectionView では、画像、名前、その他の poke 関連の情報を表示できますが、次のように機能する機能を追加しました。
- ポケモン セルを長押しすると、情報ビューが表示され、ポケモン情報のチャンクが表示されるはずですが、TatodexController から更新されたデータを取得していません。
これは、私の TatodexController の関連コードがどのように見えるかです:
解析と一部の InfoView 構成を処理する拡張機能は次のとおりです。
そして、私の InfoViewDelegate を構成する拡張機能は次のとおりです。
私の InfoView クラスの関連コードは次のとおりです。
そしてもちろん、このコードの最後のチャンクでは、データを取得していません。TatodexController のポケモン情報を InfoView に接続していないためだと思いますが、その方法はわかりません。たとえば、ポケモンのセルを長押しすると、InfoView が表示され、実際のポケモンの名前ではなく、「ルカリオ」(私のデフォルト値) と表示されます。
助けやアドバイスをいただければ幸いです。別のコードを確認する必要がある場合は、喜んでこの投稿を更新します。
編集 1: TatodexCell での handleLongPress 関数