エラーメッセージをそのまま訳すと、「初期化されていない変数を使っている。|って書いているから、作った関数の中の最初に、P$=""って書いて初期化してあげればいいんでないのでしょうか? このエラーメッセージ初めて見た。