2025年11月27日木曜日

NetSuiteの送信 RestSharpを使用

NetSuiteの送信でRestSharpを使用しました。

最初、NetSuiteの接続が分からなかった。

相手から指定されていたのを見逃していました。

OAuth1.0とMHAC-SHA256の仕様

OAuth1.0の場合、SHA1が標準らしく、NetSuiteの送信しても

901のエラーが発生して送信出来なかった。

RestSharp version 108以降は SHA256に対応したそうで

明示的に指定すれば NetSuiteの送信出来ました。

ソースは以下

                var authenticator = OAuth1Authenticator.ForProtectedResource(
                    consumerKey,
                    consumerSecret,
                    accessToken,
                    accessTokenSecret,
                    OAuthSignatureMethod.HmacSha256
                );

                authenticator.Realm = realm;

                var options = new RestClientOptions(apiurl) {
                    Authenticator = authenticator
                };

                using (var client = new RestClient(options)) {
....

                }

 

                    OAuthSignatureMethod.HmacSha256
 SHA256を指定すればOKでした。

この設定が分からなくて、1日右往左往しました。

Gemini, Grok, CoPilot  どれも指摘しなかった。

Githubの変更履歴から情報を取得しました。

ちなみに OAuth1.0 + SHA256に対応しているライブラリは

RestSharpのVersion108以降 又は Chilkat コチラは有料でした。

OAuth1.0を使用するなら OAuth2.0を採用するので OAuth1.0+SHA256の

採用案件は今後ないかなぁ。 

 

 

2025年11月7日金曜日

2025年10月28日火曜日

無料のAI groc

 web画面だと無料なAI groc

無料なので、じじぃには十分です。

2025年10月16日木曜日

MAGICはMultiPratform

 巷でいう dbMAGICは昔からMultiPlatform

最近、ReactNativeで Android用と iOS用アプリを作成したが

One Source MultiPlatformが如何に管理が楽になることが実感出来た。

 でも、Android, iOSのアプリの場合、不特定多数になるから

ライセンス料がネックになる。

Android、iOSで國愛アプリに場合はサーバライセンスだけとかじゃないと

それと画面周りのUIが乏しいから、新規アプリは難しいと感じました。

OSSでdbMAGICのような MultiPlatformって、無いんだよな

理想は Genexusのような、One Source MultiPlatformを

dbMAGICのone sourceから MultiPlatformにソース変換

各PlatformのProjectを作成してくれると嬉しい

Microsoftの.Net MAUI 、  JetBrainの KMP など、各Platform用Projectを

作成する開発ツールは存在する

昔は Windows , Mac, Linux のDeskTopが主流だったが

現在は DeskTopは Webでカバー

Androidと iOS用 アプリでMultiPlatform

 

昔、富士通関連でTOYOTAのシステムをBiz Browserで構築していたけど

Biz Browserの開発環境が理想的 One Source Run Anywhere

この先、One Source Run Anywhereが実装出来ないと生き残れないような感じ 

 

2025年10月14日火曜日

スマホご臨終

 スマホの電源が入らなくなった

スマホ修理屋に7900円に支払い、修理をお願いしたいが

マザーボードが逝かれたので、修理不可だった。

3年毎にスマホも替える必要があるのかもしれない

Aquos Wish5の31900円で十分です

iPhoneの10万クラスはじじぃには不要です

 

2025年10月10日金曜日

GraphQLのquery

 GraphQLのquery

 

 query getMKanri{
    tablesname (
      where: {
      id: { eq: 1 }
      }
    ) {
      id
      bookId
      trial_version
    }
  }


 query query名 {

テーブル名 (

  where: {

  項目名: { eq: 値 }

) {

取得項目 

 

 

whereのオペレーション 

eq 指定した値と一致する(=)
ne 指定した値と一致しない(!=)
gt 指定した値より大きい(>)
ge 指定した値以上(>=)
lt 指定した値より小さい(<)
le 指定した値以下(<=)
between 指定した1つ目の値よりも大きく、2つめの値よりも小さい
contains 指定した値が含まれる
notContains 指定した値が含まれない
beginsWith 指定した値で先頭一致
and すべての条件を満たす
or いずれかの条件を満たす
not 指定した条件を満たさない

 

2025年9月26日金曜日

React Nativeを初めてtest fightにuploadしてみた

React Nativeを初めてtest fightにuploadしてみた

昔、MAGIC リッチをアプリにした時、xcodeおよびapp store connectなど UIが

コロコロ変わって大変だったイメージが抜けなかった。

今回、AWS+DynomoDB から Azure+SQL Severに移行

管理画面もPHPからMAGICリッチで乗り換えた。

MAGICリッチの場合、テーブル表示すれば、ほとんどノーコードで楽でした

version4以降、テーブルの項目毎にsort、filter機能が付いているので

オプションを有効するだけなので、ノーコードの機能を有効活用出来ました。

前のアプリはDynamoDBはIndexedテーブルなので、レスポンスを稼ぐため

リレーションをしないで表示用テーブルからデータ表示を行っていたらしい

マスタを修正しても表示用テーブルを更新していないからデータ不整合が発生して

不便だったらしいです。

久しぶりにJavaScript、しかも非同期処理に慣れていなくて、苦労しました

MAGICはSQLは同期なので、結果を予想しやすい。

非同期の場合、サブルーチン事に終了フラグを設置して、全ての終了フラグが完了?を判定してサブルーチン事に切り分けしました。

IOSのエミュレータではFast-Imageで画像が取得出来ないからエラー出力していたので

ビルドしてもエラーが表示されるか? びくびくしなからuploadしたら問題無しでした。


作業記録を記述します。

 iOSアプリのtest Fightでテストする方法

Xcodeでテストするprojectを開いた後、menu barのproduct -> Archiveでbuild

注意点は infoタブでbuildするversion設定を行うこと

build正常終了後、archive画面からdistributeボタンでApp store connectにuploadされる

upload後、アプリに暗号を使用しているか?の回答に未使用と回答後、テストが可能

テストは登録者のみ限定出来る、相手はtest fightをインストールしてテスト召喚されたメールのurlから実行可能