OutsystemsでC#を書いてみた
やったこと
- 簡単な2項の足し算をするコードをC#で書いて、それをOutSystemsのロジック内で呼び出して使ってみた
- Structure型のRecordをC#に渡してみることにも挑戦してみた
想定読者
初歩的なOutsystemsの操作は何となくわかるが、C#でExtensionを書いたことはない・どうやって書くか知りたい人
開発環境
- Outsystems11(ServiceStudio, IntegrationStudio)
- Vidual Studio
筆者のスキル
C#の詳しいことは全然わからん outsystemsも初心者
手順
C#のコードを書く(Extension)
- 任意のApplication内に、Extentsionを作成する
- Create Moduleボタンを押すと、勝手にIntegrationStudioが開いて、EnvironmentのPasswordを聞かれるのですなおに入力する
- 以下のような画面が開くので必要ならDescriptionを書く
- 左のツリーのActionsフォルダを右クリックして、Add Actionをクリック
- 以下の図のように、Actionの引数や戻り値を設定できる画面になるので、それぞれ入力する
- 今回は、2つの項目の引数を受け取って計算結果を返却するアクションを作成するので、以下のようなParametersを設定した
- 左上のFileメニューを開いて、Edit Sourcecode .NETを選択する
- 勝手にVisual Studioが開く
- 右側のソリューションエクスプローラーでCaluculation.csを開くと先ほど入力した引数や戻り値などは勝手に補完してくれていることがわかる
// TODO: Write implementation for action
というコメントの下に今回やりたかった足し算のコードを入力する
ssResult = ssFirstTerm + ssSecondTerm;
- コードが入力し終わったら、ファイルを保存してVisual Studioを閉じる
- IntegrationStudioに戻って、1Click Publishボタンを押す(下図)
- Publishが終わってからServiceStudioに戻ると、ちゃんとExtensionが作成されてIntegrationStudioで作ったモジュールが反映されていることが確認できる
ServiceStudio側でExtensionを呼び出す
- 下図のような画面を作って、FirstTermとSecondTermというLocalVariableを用意して、Inputの値が入るように設定する
Additionボタンを押すとC#で書いたアクションを呼び出すためのScreenAction(Addition)を呼び出すように設定する
C#で書いたアクションのDependencyを貼る
- 呼び出して使ってみる
- Publishして計算させてみるとこんな感じで計算結果が正しく表示された
OutsystemsのStructureをC#に渡したい場合はどうするの?
- IntegrationStudioでStructureを定義するとその型でレコードを受け取れるようになる
EditStructure.csで、Nameの値がfooかどうか見てあげる(C#わかんない)
書いたのはこれだけ
EditStructure.cs
public void MssGetStructureAndValidateValue(RCStructureRecord ssStructure, out bool ssResult) {
ssResult = false;
String ValueForCompare = "foo";
if (ssStructure.ssSTStructure.ssName.Equals(ValueForCompare))
{
ssResult = true;
}
} // MssGetStructureAndValidateValue
EditStructure.csで、Nameの値がfooかどうか見てあげる(C#わかんない)
書いたのはこれだけ
public void MssGetStructureAndValidateValue(RCStructureRecord ssStructure, out bool ssResult) {
ssResult = false;
String ValueForCompare = "foo";
if (ssStructure.ssSTStructure.ssName.Equals(ValueForCompare))
{
ssResult = true;
}
} // MssGetStructureAndValidateValue
Author And Source
この問題について(OutsystemsでC#を書いてみた), 我々は、より多くの情報をここで見つけました https://qiita.com/oyuchan/items/ca0f5fad67a2c618d9a7著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .