MoneyFoward会計・給与で社会保険料控除・年金機構への支払の記帳が面倒だったのでツール作った

MoneyForwardクラウド会計・クラウド給与を連携していると、 給与の仕訳を作ってくれるので便利で、転記ミスを減らせて便利ですが。 社会保険料控除~年金機構への支払いの記帳で面倒な点があったのでツールを作りました。 作成したのは、 「預り金:社会保険料」と「未払費用:未払法定福利費」を、 年金機構への「未払金」にまとめる仕訳を作るツールです。 分かりにくいと思うので、順を追って説明していきます。 役員1人の法人で役員報酬のみ支払っているケースでの説明ですが、 誰かを雇用している場合でも、あまり変わらな …

GitHubActionsでCPDを動かしてCopy&Pasteを集計する

この記事は、CI/CD Advent Calendar 2022 の19日目の記事です。 CI/CD Advent Calendar 2022 https://qiita.com/advent-calendar/2022/cicd ソースコードでCopy&Pasteが多いと保守性が悪くなるので、 なるべく減らすべきです。 Copy&Pasteがどの程度あるか・増加しているかの兆候は、 機械的にそのボリュームを把握できると好ましいです。 最近は、特にIaC(Infrastructure as …

Pytestで直積とって単体テストを流すことを考えてみた

単体テストを書いていて、 入力値の組み合わせを網羅しようとすると、 記述が増えて、テストコードの保守がしにくいと思ったので、 もうちょっと機械的に書けないかを考えてみました。 手動でテストをする場合は、いくつかピックアップして実施しますが。 自動テストで、時間がかからないのであれば、 全パターン網羅してしまった方が楽だと思います(気分的にも)。 このエントリではpytestを使って、考えてみます。 テスト対象 まずは、テスト対象のコードを示します。 def target(x1, x2, x3): if …

英語キーボード設定で日本語配列のキーボードを繋いでいる時に刻印通り入力できるようにAutoHotkeyで置き換える

日本語配列のキーボードを使っているのに、 英語配列のキーボードと認識されてしまって、 記号類が刻印通りに入力できなくて不便な時があり。 (もうなんとなく覚えてしまいましたが、、) AutoHotkeyで、 日本語配列から英語配列にキーをリマップする設定を書いたのでメモとして残しておきます。 AutoHotkey https://www.autohotkey.com/ autohotkey.ahk +2:: Send, +: +6:: Send, +7 +7:: Send, : +8:: Send, +9 …

GoogleAppScriptでGmailの保存不要なメールをアーカイブする

この記事は、Google Apps Script Advent Calendar 2022 の12日目の記事です。 Google Apps Script Advent Calendar 2022 https://qiita.com/advent-calendar/2022/google-apps-script Gmailの受信トレイを整理しておくとメールを探しやすくて良いのですが、 面倒なので放置してしまい、 受信トレイにメールがたまってしまいがちです。 整理作業を少しでも楽に出来ないかと思い、 このエント …

プロキシを使ってElasticSearchのタイムアウト時リトライをテストする

ElasticSearchにPythonクライアントからアクセスする時、 「retry_on_timeout=True」オプションを指定していると、 (ElasticSearchが高負荷な場合などに) タイムアウトした場合に処理をリトライします。 リトライが行われる状況をテストしたい時、 明示的にタイムアウトさせたい訳ですが、 プロキシを使うと簡単に発生させることができたのでメモを残しておきます。 ElasticSearchのセットアップ elasticのサイトから、環境に合ったファイルをダウンロードしま …

GitHubActionsで標準エラー出力に何か出ていたら失敗させる

この記事は、GitHub Actions Advent Calendar 2022 の9日目の記事です。 GitHub Actions Advent Calendar 2022 https://qiita.com/advent-calendar/2022/github-actions GitHubActionsに限らず、 CIでビルド・自動テストが成功しているが標準エラー出力にWarningが出ている時、 なるべく、それらのWarningを解消してからマージすべきです。 が、Statusが成功になっており、 …

PyCharmプラグイン「Pytest Parametrize Inlay Hint」の紹介

この記事は、ソフトウェアテストの小ネタ Advent Calendar 2022 の5日目の記事です。 ソフトウェアテストの小ネタ Advent Calendar 2022 https://qiita.com/advent-calendar/2022/software-testing-koneta このエントリでは、 本年に作った、テストに役立つPyCharmのプラグインを紹介したいと思います。 (紹介エントリも書いていなかったので) Pytest Parametrize Inlay Hint | …

WSLにDockerEngineをセットアップする手順

WSLでDockerEngineを使う場合、 WSL既定ではsystemdが無効になっているので、 Docker公式の手順だけでは動かないです。 Docker公式の手順に、WSLでsystemdを有効にする手順を加えるだけなのですが。 このエントリでは、個人的なメモとして一通りの流れを書いておきます。 (2022.11.18 追記) systemd=true に設定すると、 以下手順のFcitx日本語キーボード設定がUnavailableになってしまうので、 ブート設定でdocker engineを起動する …

IntelliJ IDEA, PyCharmのServiceからMySQLを起動する手順

PC上の開発作業でMySQLを利用する時、 プロジェクト毎にデータベースの環境を分けることを考えると、 IntelliJ, PyCharmのServiceを利用すると便利かと思います。 このエントリでは、 IntelliJ, PyCharmのServiceからMySQLを起動する手順を示します。 MySQLのダウンロード 以下のURLに移動し、 「Linux - Generic」を選んで、利用している環境のtarをダウンロードします。 ※macosでも同じ手順でできると思います。 MySQL …

WSLgでPyCharmを動かすまでの手順メモ

このエントリは、WSLgでPyCharmを動かす環境を構築する手順のメモです。 PyCharm Professional版を使うと、 WindowsのPyCharmからWSLのPythonを扱うことも出来るのですが。 環境をまたがると、いろいろ混乱するので、 ここでは、WSLgを使ってLinux環境でPyCharmを動かすことにします。 Windows側で動かした方が日本語入力はやりやすいのですが、 プログラム書く時にあんまり日本語使わないかと思うので、 以下の流れで作業を進めていきます。 …

GitBucketのgitbucket-ci-pluginからactを呼んでGitHub ActionsのCI設定を使い回す

GitBucketにCIを仕込みたい場合は、 「gitbucket-ci-plugin」が利用出来るのですが、 個々にシェルスクリプトを書くよりも、 GitHub Actionsと同じような設定ファイルで設定できる方が、 ノウハウを使い回すことが出来て都合が良いと考えました。 「act」というGitHubActionsのローカルランナーを 「gitbucket-ci-plugin」から呼び出すことで、 ある程度は実現できたので、手順をメモを残しておきます。 gitbucket | GitHub …

IntelliJ IDEA, PyCharmのServiceの使い方メモ (Bigtable Emulatorを例に)

IntelliJ IDEA, PyCharm にサービスツールウィンドウというものがあり、 開発時に使用するサーバなどを起動するのに便利なのですが、 使い方がすぐに理解できなかったので、メモを残しておきます。 サービスツールウィンドウ | IntelliJ IDEA https://pleiades.io/help/idea/services-tool-window.html このエントリでは具体例として、 Serviceに、Google Bigtableのエミュレータを設定して、 サービスツールウィンドウ …

Pythonのasyncioとcontextmanagerの使い方メモ

Pythonでは、 asyncioを使うと非同期タスクの処理を書くことができて、 以下のページにわかりやすいサンプルもあります。 スレッドまたはプロセスプールでコードを実行する | docs.python.org https://docs.python.org/ja/3/library/asyncio-eventloop.html#executing-code-in-thread-or-process-pools ところで、 ファイルやネットワークI/Oをopenして処理するケースでは、 …

Pythonのmock_openで複数ファイルをopenするテストを書く方法のメモ

Pythonのmock_openで複数のファイルをopenするテストを書く方法のメモです。 mock_open | unittest.mock | docs.python https://docs.python.org/ja/3/library/unittest.mock.html#mock-open mock_open自体は、 次のように、open()をmockして単体テストを書く時に利用できます。 (ここでテスト対象としているtarget関数は、"/some/path"の内容を返却す …

Author
takemikami
データエンジニア
・データ分析基盤の開発運用
・マーケティングデータ分析
研究履歴 / 執筆履歴 / プロダクト
facebook
X(twitter)
BlueSky
LinkedIn
YouTube
GitHub
SpeakerDeck
slideshare
Books
takemikami's shop
Recent Posts
    [PR]
    PlayStation
    Steam
    About