2024年8月29日

BloggerにおけるJavascriptコードの文字化けについて

 
南洋の島から見る夕陽
友人からもらった沖縄の写真



前回までGASについて学んできましたが,その過程で「javascript」についても学習しました。これによって,Web画面に動きを与えることができます。

ところが,Bloggerサイトで「javascript」を使うと,メッセージ文で文字化けの事象が発生しました。

他のブログサイトでは起きないと思いますが,ちょっと困りましたので簡単に対応方法を記述します。

それでは学習を開始します。

2024年8月24日

GASを使って複数ファイルの一括ダウンロード実証


宮島弥山山頂から
宮島弥山山頂から


久しぶりに宮島の弥山に行ってきました。暑い夏の登山は結構疲れます。

さて,前回はローカルPCファイルからGoogleドライブへの一括アップロードでしたが,今回はGoogleドライブからローカルPCへの一括ダウンロードになります。

ブックマークレットの検証で暫く時間をとられましたが,GASのダウンロードについて,ある程度知見を得ましたので投稿します。

業務の自動化に関するシステムを作成していると,どうしてもGoogleドライブとローカルPC間で多数のファイルのやり取りが発生する場合があります。

Googleドライブからダウンロードする簡単な方法としては,GoogleドライブファイルのダウンロードURLを取得してwindow.open関数を利用する方法が考えられます。

しかし,window.open関数ではポップアップブロック問題があるため,どうしても1ファイル毎に手動によるダウンロード指示が入ります。

これでは,一括してファイルをダウンロードしたい場合に具合が悪く自動化に適しません。

そこで,今回は前回と同様にBase64エンコードを利用したやり方で,複数ファイルを一括してダウンロードしてみたいと思います。

それでは学習を始めましょう。

2024年6月13日

GASを使ってテキストファイルの複数アップロードとイメージファイルアップロードの実証


四国今治城
四国今治城  


愛媛県の今治城に行ってきました。この城は戦国時代に藤堂高虎が作った城で,海水を堀に引き込んでいるのには驚きました。

さて,前回はGASを使って一つのテキストファイルに限定したアップロード方法を記述しました。

GASを使ってローカルPCの日本語テキストファイルをアップロードし英語に変換してみた。

GASを使ってローカルPCの日本語テキストファイルをアップロードし英語に変換してみた。

Google Apps Script(GAS)を使ってPCのローカルテキストファイルをアップロードし,加工・蓄積するGASスクリプトを作成する


今回はこれを複数ファイルでも可能にします。ついでに,PDFやイメージなどのマルチファイルアップロードについても検証してみました。

方法としては,PC側で伝送ファイルをBase64ファイル形式に変換して伝送し,GAS側でデコードする方式を使います。

Base64とは、64進数を意味する言葉で、すべてのデータをアルファベット(a~z, A~z)と数字(0~9)など64種類の文字コードで表すエンコード方式です。

昔は文字コードしかファイル伝送出来なかったので,イメージファイルなどを文字コードに変換してファイル伝送する方法を考えたということです。

全てのファイルは,バイナリーデータの集合体として考えることができますので,データを文字列にして送信するのは応用範囲が広いと考えます。

それでは,複数ファイルの入力方法とドラッグ&ドロップの改良をやった後,伝送方式をBase64形式に改良することにします。

では学習を始めましょう。

2024年5月31日

GASを使ってローカルPCの日本語テキストファイルをアップロードし英語に変換してみた。

 

亀老山山頂から望む来島海峡
亀老山山頂から望む来島海峡 


Google Apps Script(以下,GASという)を使う機会を得たので,ついでにローカルパソコン(以下PCという)のテキストファイルについて,GASではどのような扱いになるか学習することにしました。

今回は,PCにあるローカルテキストファイルをアップロードして,加工・蓄積するGASスクリプトになります。

仕事でPCを使う企業は,セキュリティ上,社内に情報を閉じ込める事が多く,そのためPC常駐ソフトであるマイクロソフトエクセルのVBAや自主開発ソフトを使う事が多くなります。

しかし,それではクラウドなどの外部サービスを使えないため発展性に乏しく,生産性や競争力が見劣りすることになり,外部のサービスをどのように活用して行くかが今後の課題です。

そのような中,Google Apps Script(GAS)は時間制限や処理回数制限があり,クラウド特有の使いづらいさはありますが,小規模な事務作業の効率化やデータバックアップ,外部WebAPIへの応用などで利用価値があると考えます。

この主旨に則り,ローカルPCにある日本語テキストファイルをブラウザ機能を使って,GoogleドライブのGASスクリプトにアップロードし,英語に翻訳後スプレッドシートに出力してみました。

GASスクリプトに入ってしまえば,アップロードファイルをドキュメント変換することも容易ですが,GASには,エクセルVBAのようなテキストファイルを直接読み書きする関数がないため,ファイルを全て配列に読み込んで加工後出力します。

今回は,スクリプトの処理結果を早く見たかったので,この出力部分をスプレッドシートにしています。

テキストの翻訳なんて,今ではあまり珍しくありませんが,GASの関数で行えるのにはちょっと驚きました。

それでは,学習を開始します。

2024年4月27日

GASを使って電子取引データファイル名から索引簿を作成するスクリプトを作ってみました。

松山観光港の夕日
松山観光港の夕日



2024年1月1日より電子帳簿保存法による電子取引データの電子保存義務化が実質的に始まりました。

実際には,2022年1月1日から義務化されていたのですが,2023年12月31日まで宥恕措置がありましたので,2023年度までは印刷書面による保存も可能でした。

しかし,2024年度からは電子データとして受発信した電子取引データは,原本のまま保存しなければなりません。

これについては,ほとんどの方が対応を終えられていると存じます。当研究会でも電子帳簿保存法および令和5年6月版電子帳簿保存法一問一答【電子取引関係】に従い,規程を整備して検索しやすいファイル名を付した電子取引データとして保存しています。

今回は,GoogleAppsScript(GAS)学習の一環として,この電子取引データについて索引簿作成スクリプトを作ってみましたので参考にご紹介します。

企業であれば,それなりの経済力があるため如何なる対応も可能でしょうが,小規模事業者では費用も要員も限られるため,小さな工夫ですが参考になれば幸いです。

具体的には,国税庁の電子帳簿保存法一問一答【電子取引関係】令和5年6月版や電子帳簿保存法の関係法令を参考に検討しましたので,調査するのに多くの時間を要しました。

それでは,学習を始めます。