OAF FlexField中数据库与页面的前后台数据类型转换
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 Oracle Application中有FlexField(弹性域)这个东西。在FlexField tables,数据存放于VARCHAR2类型的一列或多列中。不论是数字、日期、文本等,最终都会以VARCHAR2存放在table中。在OA Page中,这些
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入
Oracle Application中有FlexField(弹性域)这个东西。在FlexField tables,数据存放于VARCHAR2类型的一列或多列中。不论是数字、日期、文本等,最终都会以VARCHAR2存放在table中。在OA Page中,这些VARCHAR2一般需要使用相对应的格式,比如日期、数字,以使用相应的验证机制,或者根据不同的地区转换成不同的格式。问题是,怎样在前后台中做数据类型转换呢?一个最简单的办法是使用OAF的FlexField Bean.但在一些情况下,使用FlexField Bean反而会不方便控制。甚或乎,明明跟随了OAF Developer Guide的方法,但总是用不了这个FlexField Bean.这时,只能手工地做这件事情了。
数据类型转换的基本原理很简单:把读写分离,或者说把前后台不同方向的数据流分开处理。
1. 传统情况
所谓传统情况,或者一般情况,就是数据库的列名是有实际意义的、明确的。比如,列名是EFFECTIVE_DATE,EO、VO中的属性名也会使用EffectiveDate.
我们会在VO中定义一个SQL语句。当进行操作时,OAF会把这个SQL语句封装,然后进行读写。比如:
[sql]
SELECT ExampleEO.example_id AS EXAMPLE_ID
, ExampleEO.effective_date AS EFFECTIVE_DATE
, ExampleEO.employee_name AS EMPLOYEE_NAME
FROM ExampleEO
WHERE ExampleEO.example_id > 10
当查询example_id = 100的记录,OAF会封装成这样子:
[sql]
SELECT *
FROM (SELECT ExampleEO.example_id AS EXAMPLE_ID
, ExampleEO.effective_date AS EFFECTIVE_DATE
, ExampleEO.employee_name AS EMPLOYEE_NAME
FROM ExampleEO
WHERE ExampleEO.example_id > 10) QRSLT
WHERE QRSLT.EXAMPLE_ID = 100
插入的时候也是类似的:
[sql]
UPDATE (SELECT ExampleEO.example_id AS EXAMPLE_ID
, ExampleEO.effective_date AS EFFECTIVE_DATE
, ExampleEO.employee_name AS EMPLOYEE_NAME
FROM ExampleEO
WHERE ExampleEO.example_id > 10) QRSLT
SET QRSLT.EFFECTIVE_DATE =
, QRSLT.EMPLOYEE_NAME =
WHERE QRSLT.EXAMPLE_ID = 100
总的来说,是将VO中的SQL语句封装成表格,然后外面包裹相应的操作。
2. FlexField的问题
而在FlexField的情况,列名是没有实际意义,或者说不明确的。FlexField存放数据的列名一般是ORG_INFORMATION1、PER_INFORMATION5之类。在VO中,这些名字可能会被替换为实际的用途,比如说ORG_INFORMATION1可能是一个Effective Date,那么在VO中的属性就会被命名为EffectiveDate.这个的mapping是在VO properties中设置的。
为了简化列名,本文把ORG_INFORMATION1、PER_ATTRIBUTE1等统称为information1.于是,在一个FlexField表格,VO的语句会是这个样子:
[sql]
SELECT ExampleEO.example_id AS EXAMPLE_ID
, ExampleEO.information1 AS EFFECTIVE_DATE
, ExampleEO.information2 AS EMPLOYEE_NAME
FROM ExampleEO
WHERE ExampleEO.example_id > 10
查询example_id = 100的记录,会生成以下的语句:
[sql]
SELECT *
FROM (SELECT ExampleEO.example_id AS EXAMPLE_ID
, ExampleEO.information1 AS EFFECTIVE_DATE -- information1 is a VARCHAR2
, ExampleEO.information2 AS EMPLOYEE_NAME
FROM ExampleEO
WHERE ExampleEO.example_id > 10) QRSLT
WHERE QRSLT.EXAMPLE_ID = 100
查询语句本身没有问题。但是在OA Page中,显示日期的item所属的类型一般会设成DATE,而上面的SQL语句查询结果的类型是VARCHAR2.于是,VO与PG上的的属性类型不管如何设置,都会在页面上方报错。此乃问题一。
[1] [2]

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









iPhone のモバイル データ接続に遅延や遅い問題が発生していませんか?通常、携帯電話の携帯インターネットの強度は、地域、携帯ネットワークの種類、ローミングの種類などのいくつかの要因によって異なります。より高速で信頼性の高いセルラー インターネット接続を実現するためにできることがいくつかあります。解決策 1 – iPhone を強制的に再起動する 場合によっては、デバイスを強制的に再起動すると、携帯電話接続を含む多くの機能がリセットされるだけです。ステップ 1 – 音量を上げるキーを 1 回押して放します。次に、音量小キーを押して、もう一度放します。ステップ 2 – プロセスの次の部分は、右側のボタンを押し続けることです。 iPhone の再起動が完了するまで待ちます。セルラーデータを有効にし、ネットワーク速度を確認します。もう一度確認してください 修正 2 – データ モードを変更する 5G はより優れたネットワーク速度を提供しますが、信号が弱い場合はより適切に機能します

世界は狂ったように大きなモデルを構築していますが、インターネット上のデータだけではまったく不十分です。このトレーニング モデルは「ハンガー ゲーム」のようであり、世界中の AI 研究者は、データを貪欲に食べる人たちにどのように餌を与えるかを心配しています。この問題は、マルチモーダル タスクで特に顕著です。何もできなかった当時、中国人民大学学部のスタートアップチームは、独自の新しいモデルを使用して、中国で初めて「モデル生成データフィード自体」を実現しました。さらに、これは理解側と生成側の 2 つの側面からのアプローチであり、両方の側で高品質のマルチモーダルな新しいデータを生成し、モデル自体にデータのフィードバックを提供できます。モデルとは何ですか? Awaker 1.0 は、中関村フォーラムに登場したばかりの大型マルチモーダル モデルです。チームは誰ですか?ソフォンエンジン。人民大学ヒルハウス人工知能大学院の博士課程学生、ガオ・イージャオ氏によって設立されました。

最近、軍事界は、米軍戦闘機が AI を使用して完全自動空戦を完了できるようになったというニュースに圧倒されました。そう、つい最近、米軍のAI戦闘機が初めて公開され、その謎が明らかになりました。この戦闘機の正式名称は可変安定性飛行シミュレーター試験機(VISTA)で、アメリカ空軍長官が自ら飛行させ、一対一の空戦をシミュレートした。 5 月 2 日、フランク ケンダル米国空軍長官は X-62AVISTA でエドワーズ空軍基地を離陸しました。1 時間の飛行中、すべての飛行動作が AI によって自律的に完了されたことに注目してください。ケンダル氏は「過去数十年にわたり、私たちは自律型空対空戦闘の無限の可能性について考えてきたが、それは常に手の届かないものだと思われてきた」と語った。しかし今では、

テスラのロボット「オプティマス」の最新映像が公開され、すでに工場内で稼働可能となっている。通常の速度では、バッテリー(テスラの4680バッテリー)を次のように分類します:公式は、20倍の速度でどのように見えるかも公開しました - 小さな「ワークステーション」上で、ピッキング、ピッキング、ピッキング:今回は、それがリリースされたハイライトの1つビデオの内容は、オプティマスが工場内でこの作業を完全に自律的に行い、プロセス全体を通じて人間の介入なしに完了するというものです。そして、オプティマスの観点から見ると、自動エラー修正に重点を置いて、曲がったバッテリーを拾い上げたり配置したりすることもできます。オプティマスのハンドについては、NVIDIA の科学者ジム ファン氏が高く評価しました。オプティマスのハンドは、世界の 5 本指ロボットの 1 つです。最も器用。その手は触覚だけではありません

FP8 以下の浮動小数点数値化精度は、もはや H100 の「特許」ではありません。 Lao Huang は誰もが INT8/INT4 を使用できるようにしたいと考え、Microsoft DeepSpeed チームは NVIDIA からの公式サポートなしで A100 上で FP6 の実行を開始しました。テスト結果は、A100 での新しい方式 TC-FPx の FP6 量子化が INT4 に近いか、場合によってはそれよりも高速であり、後者よりも精度が高いことを示しています。これに加えて、エンドツーエンドの大規模モデルのサポートもあり、オープンソース化され、DeepSpeed などの深層学習推論フレームワークに統合されています。この結果は、大規模モデルの高速化にも即座に影響します。このフレームワークでは、シングル カードを使用して Llama を実行すると、スループットはデュアル カードのスループットの 2.65 倍になります。 1つ

先週、MicrosoftはGPT-4レベルと呼ばれるオープンソースモデルであるWizardLM-2をエアドロップした。しかし、投稿されてから数時間後にすぐに削除されるとは思いませんでした。一部のネチズンは、WizardLM のモデル ウェイトと発表投稿がすべて削除され、Microsoft のコレクションになくなったことを突然発見しました。このサイトについての言及を除けば、これが Microsoft の公式プロジェクトであることを証明する証拠は見つかりませんでした。 GitHub プロジェクトのホームページが 404 になりました。プロジェクトアドレス: https://wizardlm.github.io/ HF 上のモデルの重みを含め、すべてが消えてしまいました...ネットワーク全体が混乱に満ちています、なぜ WizardLM は消えたのですか?しかし、Microsoft がこのようなことを行った理由は、チームがモデルを「テスト」するのを忘れたためです。後はマイクロ

Open-Sora は、オープン ソース コミュニティで密かに更新され、最大 720p の解像度で最大 16 秒のビデオ生成をサポートし、テキストから画像へ、テキストからビデオへ、画像からビデオへの変換を処理できます。あらゆるアスペクト比のビデオ間の処理や、無限に長いビデオの生成ニーズにも対応します。試してみましょう。横画面のクリスマス雪景色を生成し、B サイトに投稿してから縦画面を生成し、Douyin を使用して 16 秒のビデオを生成します。これで、誰もが脚本に夢中になる生活を送ることができます。ガイダンス GitHub: https://github.com/hpcaitech/Open-Sora さらにすごいのは、Open-Sora は、最新のモデル アーキテクチャ、最新のモデルの重み、マルチタイム/解像度/長期を含め、依然としてすべてオープン ソースであるということです。

先週、社内の辞任と社外からの批判が相次ぐ中、OpenAIは内外のトラブルに見舞われた。 - 未亡人姉妹への侵害が世界中で白熱した議論を巻き起こした - 「覇権条項」に署名した従業員が次々と暴露 - ネットユーザーがウルトラマンの「」をリストアップ噂の払拭: Vox が入手した漏洩情報と文書によると、アルトマンを含む OpenAI の上級幹部はこれらの株式回収条項をよく認識しており、承認しました。さらに、OpenAI には、AI セキュリティという深刻かつ緊急の課題が直面しています。最近、最も著名な従業員2名を含むセキュリティ関連従業員5名が退職し、「Super Alignment」チームが解散したことで、OpenAIのセキュリティ問題が再び注目を集めている。フォーチュン誌は OpenA を報じた。
