カテゴリー : プログラミング

SOY CMSマニュアルページ作成中
SOY CMS、SOY ShopとSOY Appの操作に関する質問を下記のページで受け付けています。

SOY CMS/Shopで標準機能だけでは実装が難しい時はお気軽にご相談下さい。

SOY CMSの開発秘話を投稿しました。→ SOY CMSの開発秘話
ブログ内検索
 

UbuntuにAndroidのエミュレータを入れる

Go言語のGo MobileでAndroidアプリを開発してみるで、 Go言語でAndroidアプリを開発出来る環境を設けた。 開発を快適にするために、開発機にAndroidのエミュレータを入れてみた。 まずは環境をまとめてみる。 開発機 Lenovo Ideapad 720S プラチナ CPU : AMD Ryzen 5 2500U APU ( 2.00GHz 2MB ) OS : Ubuntu 18.04 メモリ : 8.0GB PC4-17000 DDR4 (オンボ...

Read More…

 

SQLiteでデータを入れて取り出してみる

データベースを操作する際に、SQLという言語がある。 SQL - Wikipedia SQLは、検索を行うアプリ等で頻繁に使われる。 以下の文はWindows 10での操作。 https://www.sqlite.org/index.htmlからSQLiteをダウンロードする。この時、 https://sqlitebrowser.org/からDB browser for sqliteもダウンロードしてインストールしておく。 SQLiteのインストール手順は SQLite ...

Read More…

 

Go言語のGo MobileでAndroidアプリを開発してみる

Go言語ではAndroidやiOSのアプリの開発用でmobileパッケージが用意されている。 GitHub - golang/mobile: [mirror] Go on Mobile Androidアプリの開発することになったので、 本家のJavaではなくGo言語で開発してみることにする。 今回はサンプルコードをAndroid端末で動かすところまで。 ということで早速開発環境を載せる。 開発機 Lenovo Ideapad 720S プラチナ CPU : AMD R...

Read More…

 

会議用の資料の作成時間を短縮したい

SOY CMS/Shopの開発元を辞め、自営になって非IT系の企業に出入りするようになって驚いたことがある。 それは、 弥生販売のような販売管理のソフトウェアを利用していて、 前年度の売上や、前々年度の売上比較を会議で話題に挙げたいので、 わかりやすい資料を事前に作成して会議に臨む。 この資料は会議で話題を挙げるための本人が作成であったり、 事務員が作成であったりする。 (見本はないけれども、) 既存のソフトウェアから出力されるエクセルは会議に使える要素だけをピックア...

Read More…

 

jQuery.uploadプラグインをjQuery3系でも動作するように修正してみた

jQuery.uploadプラグインというAjaxでファイルをアップロードする時に重宝するjQueryのプラグインがあります。 このプラグインは2013年の最終更新以降開発が止まっているのですが、 SOY Shopで利用していて、 他のプラグインに置き換えるのが面倒だったため、 現在のjQueryのバージョンでも動作するように修正してみた。 下記が今回の修正の際のバージョン jQuery 3.3.1 jQuery.upload 1.0.9 jQuery.upload | ...

Read More…

 

自作アプリを介してのGoogle検索でService Unavailableになった

Google検索の結果を集計したいという要望があり、 こんな感じで検索フォームを設置し、 集計結果をフォームの下に出力する簡易的なページをPHPで書いてみた。 検索結果を取得するあたりのコードは下記の通り $word = "hoge"; //何らかの検索ワードを挿入する $url = "https://www.google.co.jp/search?q=" . str_replace(array(" ", " "), "+", $word); //cURLセッシ...

Read More…

 

Go言語 + kintone + チャットワークでタスクの自動登録アプリを作ってみる3

前回のGo言語 + kintone + チャットワークでタスクの自動登録アプリを作ってみる2で Go言語でkintone REST APIを利用して任意のアプリからJSON形式で登録データを取得してみた。 今回は取得したデータをチャットワークにタスクとして登録してみる。 今回の話に入る前にざっくりと説明すると kintoneで上のキャプチャのようなフィールドを設けたアプリを作成して、 指定の月日になったら、チャットワークにラベルをタスク名にして投稿する というアプリを...

Read More…

 

Go言語 + kintone + チャットワークでタスクの自動登録アプリを作ってみる2

前回のGo言語 + kintone + チャットワークでタスクの自動登録アプリを作ってみる1の続き ざっくりと説明すると、 kintoneで上のキャプチャのようなフィールドを設けたアプリを作成して、 指定の月日になったら、チャットワークにラベルをタスク名にして投稿する というアプリを作成している。 指定の月日になったらというところだけれども、 kintoneの仕様を調べてみると、Linuxでいうところのcronのような機能を見つけられなかった為、 Go言語でkint...

Read More…

 

Go言語 + kintone + チャットワークでタスクの自動登録アプリを作ってみる1

毎年同じ時期にやらなければならない仕事があって、 その仕事を忘れないようにしておきたい。 できれば、 チャットワーク(ChatWork) | ビジネスが加速するクラウド会議室 チャットワークのタスクとして登録しておきたい。 という相談があった。 PHPでチャットワークAPIを介してメッセージを投稿してみる kintone - サイボウズのビジネスアプリ作成プラットフォーム 相談者は既にcybozeのkintoneを利用していたので、 タスクの登録はk...

Read More…

 

PHPでチャットワークAPIを介してタスクを登録してみる

チャットワーク(ChatWork) | ビジネスが加速するクラウド会議室 以前、PHPからチャットワークを介してメッセージを投稿してみたことがある。 PHPでチャットワークAPIを介してメッセージを投稿してみる 今回はチャットワークAPIを介してタスクを登録してみることにする。 先に前回の復習でメッセージの投稿周りのコードを確認しておく。 ?php //取得したAPIトークンを入れる $apiKey = "****************************...

Read More…

 

Go言語 + Selenium + Agoutiでテスト自動化

Go言語 + Selenium + AgoutiでSOY CMSにログイン出来なかった時に適切にエラーを表示するかを確認してみる。 package main import ( "log" "strings" "github.com/sclevine/agouti" ) //SOY CMSにログインできなかた時に適切にエラーを表示するか?テスト func main() { driver := agouti.ChromeDriver() err := dri...

Read More…

 

Go言語 + Selenium + Agoutiで自動でGoogle検索

前回の続きで、seleniumでグーグル検索した後、検索フォームにseleniumuと入力してボタンを押してみる。 下記のコードを入力する。 package main import ( "log" "github.com/sclevine/agouti" ) func main() { driver := agouti.ChromeDriver() err := driver.Start() if err != nil { log.Fatal(er...

Read More…

 

Go言語 + Selenium + Agoutiでブラウザ操作の自動化

Selenium - Web Browser Automation https://agouti.org/ Go言語でSeleniumとAgoutiを介してChromeブラウザを自動で操作してみる。 SeleniumはJava上でなければ動作しないため、はじめにJavaをインストールする。 Javaは下記のページからダウンロードして、画面の指示に従ってインストールする。 無料Javaソフトウェアをダウンロード 続いて、seleniumu-serverをhttps:...

Read More…

 

SOY CMSを介さずにSOY2DAOを使ってみる2

前回のSOY CMSを介さずにSOY2DAOを使ってみる1では、 SOY2DAOクラスを読み込んでみたけれども、 SOY2DAOを介してDAOではなく自作したSQL構文を実行してみた。 今回はDAOを実行するサンプルコードを作成してみる。 SOY2DAOでデータベースから値を取り出す はじめにDAOを実行するためのクラスを用意する。 DAO用のクラスは下記の個所に作成してみる。 . ├── index.php └── webapp ├── cache ...

Read More…

 

SOY CMSを介さずにSOY2DAOを使ってみる1

SOY2HTMLのIgnoreプラグインを使ってみるに引き続き、 SOY CMS以外のアプリでSOY2DAOを使ってみる。 SOY2DAOはその名の通りDAOのためのクラスですが、 SQL構文をそのまま実行出来るという痒いところに手が届く的な側面もあるため、 PDOよりも直感的にSQLを実行出来るといった機能もある。 SOY2DAOに関する詳細は下記の記事をご覧ください。 SOY CMS/Shopのモジュール内でSQLを実行する SOY2DAOでデータベースから値を取り出す...

Read More…

 

Go言語でスコープ

下記のようなコードを入力してみる。 package main import "fmt" func main() { var str string var i int // if文を使うためのダミーの変数 if i == 0 { var str string str = "hello" fmt.Println(str) } fmt.Println(str) } 実行すると、helloと表示される。 ここで、注目したいのは、func ma...

Read More…

 

SOY2HTMLのIgnoreプラグインを使ってみる

前回のSOY CMSを介さずにSOY2HTMLを使ってみるでSOY CMSに組み込まれているSOY2の機能をSOY CMSを介さずに利用できることを紹介しました。 SOY2HTMLという言うのは!-- soy:id="***" /--のことで、 このタグこそがSOY CMSの開発理念にあるデザイナとプログラマをつなぐ肝となる。 SOY CMSの開発秘話前編 SOY2HTMLを使用出来るようになったら、 一緒に利用したいものとして!-- cms:ignore --があるだろう。 ...

Read More…

 

SOY CMSを介さずにSOY2HTMLを使ってみる

Webサイトなりアプリを開発する際、 SOY CMSは入れたくはないけれども、SOY CMSの記法のsoy:idは使いたい という要望がちょくちょくある。 SOY CMSはSOY2というライブラリを使用していて、 SOY2の中のSOY2HTMLのみを使用することは可能です。 ※SOY2HTMLはテンプレートエンジン 今回はSOY2HTMLのみを利用する方法を説明します。 説明の前にSOY2HTMLについて興味がある方は下記の記事をご覧ください。 SOY CMSの開発秘話前...

Read More…

 

kintoneのカレンダーの日付カラムで4件以上表示したい

kintoneを利用している方から標準機能のカレンダーを印刷して スケジュールの確認用として社内の掲示板に張りたいということで kintone - サイボウズのビジネスアプリ作成プラットフォーム 新しいアプリを作成して、カレンダーページを設けました。 ここで一つ問題発生。 同じ日にスケジュールが4件以上あると、3件目以降のスケジュールが折りたたまれて、 印刷をしても表示されなくなる。 これだと冒頭の要件を満たさないということで、 JavaScrip...

Read More…

 

Go言語でクライアントのレスポンスを見る

workspace/go/web/clientでclient.goファイルを作成する。 package main import ( "fmt" "log" "net/http" "net/http/httputil" ) func main() { resp, err := http.Get("http://localhost:8889") defer resp.Body.Close() if err != nil { log.Fatal(err...

Read More…