アプリの保存ボタンクリック時の画面遷移に関して

お世話になっております。

アプリの一覧画面から追加ボタンをクリックし、
入力フィールドに値を入れ、保存を押した場合、

保存処理後にレコード詳細画面に遷移しますが、

アプリのレコード追加画面のURLをクリックして、
一覧を経由せずレコードを追加する画面に遷移した後、
入力フィールドに値を入れ、保存を押した場合、

保存処理後に画面が遷移せずレコード追加画面のままになります。

後者の場合、保存ボタンをクリック後に別画面に遷移する方法はありますでしょうか。

(上記動作をモバイルで対応したいと考えております。)

恐れ入りますが、ご教示頂けませんでしょうか。

三宅努さん

『アプリのレコード追加画面のURLをクリックして』とは

URL入力欄にレコード追加画面のURLをコピーしてEnterということでしょうか?

入力必須の設定をしたフィールドが未入力の場合、Enter押下後もレコード追加画面

のままになりますが、その時は未入力の旨メッセージが表示されますし。。。

amuro様

ご返答有難う御座います。

ブラウザ上のアプリのレコード追加画面のURLを事前にコピーしておいて、

それをレコード追加を行うユーザーに通知し、そのURLからレコード追加画面に入ってもらうという形になります。

必ずログインをする必要があるので、同じユーザーでログインをしてもらってという使い方をしたいと考えております。

 

入力項目は全て入力した上で、保存ボタンをクリックすると、

保存はされていますが、画面が遷移しない為、

登録が終わっているのか終わっていないのかわからずに、再度登録をクリックするということが起こっております。

保存ボタンをクリック後どの画面にでもいいので遷移し、登録が完了したことがわかればいいと考えています。

難しいでしょうか。

三宅努さん

再度の確認で申し訳ありません。

操作内容としては、

①URL入力欄に入力画面のURLをコピーで貼り付ける

URLの例 : https://xxxxx.cybozu.com/k/9999/edit ←該当アプリのURLの後ろにedit

②Enter押下で入力画面に遷移する

③項目入力後、保存ボタン(画面下、削除ボタンの隣にある)押下

でしょうか?

この手順だと保存ボタン押下後はレコード詳細画面に遷移すると思います。

すいません。

削除ボタンではなく、キャンセルボタンですね。

 

 

ご返答有難うございます。

おっしゃる通りです。

私もパソコン側で同じ処理を行うといわれた通りの動きになっております。

モバイル側で操作をする場合、

https://xxxxx.cybozu.com/k/m/9999/edit

とmを入れたURLになるかと思うのですが、

それをスマートフォンで操作すると、

画面が一瞬切り替わるのですが、レコード追加画面のままになります。

私のスマートフォンだけの現象になるのでしょうか。

三宅努さん

PC側で、モバイルのURL:https://xxxxx.cybozu.com/k/m/9999/edit

を指定して先ほど確認した手順を行うとモバイル画面で正常な遷移が行われましたが、

私のスマートフォン上で同じことを行うと入力画面を直接表示できず、PCのポータル

画面に飛んでしまいました。

スマートフォンの機種によって動作が違うのかどうか私のほうでも色々試してみます。

 

何度も返答有難うございます。

助かります。

 

複数名にスマートフォン上でモバイルURLを使用して操作してもらうと、

PCのポータル画面に飛ぶことはなく、入力画面に直接表示された後、保存をクリックして画面が遷移しないという現象となりました。

通常の遷移とは別で、保存ボタンをクリックした後になにかしら強制的にでも遷移ができれば、

登録が完了したことがわかるのですが、

やはり遷移できない以上、イベントも拾うことが出来ず、そういった処理も入れることはできないでしょうか。

 

 

三宅努さん

スマートフォンやタブレットで色々と試してみたところ
OSとブラウザで動きに違いがあるようです。

スマートフォンにて入力画面のURIで実行。

OS:IOS ブラウザ:Safari の場合、画面遷移はうまくいきました。
入力画面 ⇒ 保存ボタン押下 ⇒ レコード一覧画面 ⇒ レコード詳細画面

OS:Android ブラウザ:Chrome の場合、入力画面にいかず、PCポータル画面へ飛ぶ。

タブレットにて入力画面のURIで実行。

入力画面 ⇒ 保存ボタン押下 ⇒ 入力画面(入力項目はクリアされている状態)⇒

さらに保存ボタン押下 ⇒ ブラウザ画面

 

動作の差異がOSによるものなのか、OSとブラウザの組み合わせによるものなのか迄は判りませんでした。

スマートフォンではレコード追加画面で保存を行うと、レコード一覧画面を表示した後にレコード詳細画面を

表示する仕様なので

mobile.app.record.index.show , mobile.app.record.detail.show のイベントが発生しているか確認してみては

いかがでしょうか。

レコード一覧イベント
https://cybozudev.zendesk.com/hc/ja/articles/201941964

レコード表示イベント
https://cybozudev.zendesk.com/hc/ja/articles/201941974

お世話になっております。

検証色々して頂き有難うございます。

 

>>スマートフォンではレコード追加画面で保存を行うと、レコード一覧画面を表示した後にレコード詳細画面を

>>表示する仕様なので

>>mobile.app.record.index.show , mobile.app.record.detail.show のイベントが発生しているか確認してみては

>>いかがでしょうか。

私もそこで処理を行えればと思い、確認したのですが、

イベントが発生しておらず、処理を行うことが出来ませんでした。

保存ボタンを画面から押すのではなく、

自前で用意したボタンをクリックし、そのボタンの動作の中で

プログラムから保存ボタンを押すことはでいないでしょうか。

それができれば、別の方法を試すことが出来そうですが、

やり方がわからず行き詰っております。

 

本当に色々確認していただき有難う御座います。

 

三宅努さん

画面表示イベントが発生しないのは大問題ですが、自前ボタンでアクションを起こしたいのなら

onclick処理の中で

①REST APIを利用してレコードを追加

②レコード追加が正常に行われたら画面遷移

という流れでどうでしょうか。

こちらが参考になると思います。

スマートフォンで、ボタンを押して自動レコード登録の方法。
https://cybozudev.zendesk.com/hc/ja/community/posts/212011966

 

また、画面遷移は

var url = ‘https://xxxx.cybozu.com/k/m/9999/’; ←この場合、アプリ9999の一覧画面のURI
window.open(url);

で遷移すると思います。

amuro様

お世話になっております。

ご返答有難う御座います。

一通り、画面遷移までの自前ボタン処理は試したのですが、

そもそも、既存の保存ボタンではなぜ遷移しないのか、

それができるなら、自前ボタンなど作成しなくてシンプルなんじゃやないかと思い質問させていただいた経緯があります。

色々ご提案と、検証していただき本当にありがとうございます。

ブラウザによって動きが違うということはどうしようもありませんね。

一旦、ここで質問を終了させていただきます。

 

本当にありがとうございました。