みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
Mozさん
表示領域を越えればスクロールしてブヨブヨしますし、越えなければ空白が表示されます。
領域を越えた場合のスクロールは防げませんが空白は自動サイズ調整で防げます。
「自動サイズ調整を右まで指定したオブジェクトがないiPhone5専用に合わせたレイアウト」
をiPhone6Plusでの画面で拡大して左右の幅を合わせても、
初期描画時の空白部分までスクロールしてぶよぶよするというわけですね。
現在、前担当者から引き継いだシステムの保守をしているのですが、
iPod, iPhone5, iPhone6/6s/7/8, iPhone6 Plus/6s Plus/7 Plus/8 Plus, iPad(横)
用に5種のレイアウトが用意されており頭を抱えていました。
(各オブジェクトの自動サイズ調整は上と左のみで、下や右の空白を埋めるようなもの
は存在しません。保守を考慮せず、各端末に合わせた専用のレイアウトを作るなら
これで良かったのでしょうが。。。)
Mozさんのおっしゃる通り、特に
『想定される最も小さな画面サイズに合わせて設計を行い自動サイズ調整を行う』
レイアウトを用意するのが理想形だったのですね。
アス比がこれまでのiPhoneと異なる、iPhoneXを考慮したレイアウトをどうすべきか
悩んでいたのですが参考になりました。ありがとうございました。
【追記】
自動サイズ調整の使い方で覚えておきたいのは
余白を手早く無くすには画面外に上下左右のアンカーを外したオブジェクトを置く
いまさらながら引用文の方法を試させていただきました。
こんな方法もあるんですね・・・!
画面外のオブジェクトが何かしらの表示不正を招いたりしないか不安もある(※)ので、
自動サイズ調整でどうにもならない場合の最終手段としようと思います。
※この挙動はFileMaker的には想定通りの挙動なのでしょうか
おかげさまでiPhone端末のレイアウトを一つにまとめる対応もできそうです。
ありがとうございます。
私も同様の疑問があるため上げさせていただきます。
iPhone6とiPhone8PlusやiPhoneXを比較すると、画面サイズが大きく
異なり、たとえばiPhone6に合わせた画面レイアウトだと、
iPhone8Plusでは画面右部分、下部分に空白ができるかと思います。
画面を拡大するとなんとなく画面サイズに合いはしますが、
フリックで左右にぶよぶよ動く不安定な状態になります。
自動サイズ調整を使えばオブジェクトは右側まで伸びますが、
1つの端末専用に作ったレイアウトに比べれば見劣りします。
特に「上部ナビゲーション」や「フッター」に配置したオブジェクトは
不格好な形になってしまいます。
エビナノブヒデさんがおっしゃる、
> 画面サイズは、昔から適当にできています。
というのは、このような状態になることを指しているのでしょうか?
オブジェクトの自動サイズ調整以外に、背景部分も画面に合わせて
拡縮してくれるような仕組みはないのでしょうか?
それとも、自動サイズ調整を駆使し、それぞれの画面サイズでそれなりに
うまく表示できるように配置を工夫すべきなのでしょうか?
Hiroさん、回答ありがとうございます。
#2に誤りがあったので訂正しました。
(値の確認にはスクリプトデバッガとデータビューアを使っています)
MySQL等のデータベースにも改行文字が格納できますし、
今回も同様にどこかで改行文字が入っているのかと考えましたが、
そのようなことはないのでしょうか。
また、データビューア上で確認できるConfig::DeviceVerとConfig::zg_DeviceVerの値は
それぞれ"iPhone6"(改行なし)なのに、
$$TEST1、$$TEST2に格納される値が異なっていることを不思議に思っています。
if文の中身は、
変数を設定 [$$DEVICE_VER; 値: ExecuteSQL( "SELECT DeviceVer FROM Config"; ""; "" )]
If [$$DEVICE_VER = "iPhone6"]
レイアウト切り替え [・・・・・・]
Else If [$$DEVICE_VER = "iPhone6Plus"]
・・・・・・
End If
といったものです。
PatternCountを使えばif文分岐がうまくいきそうですね、ありがとうございます。
ただ、今回の変更を加える前のファイルに再度同様の変更をしてみたらこのような問題が生じず、
期待する動作をしてくれているのでそちらを使おうと思います。
自分の理解が浅すぎて、必要な情報提示がうまくできていないと思います。
読みづらい文章にご回答いただき、ありがとうございました。
レイアウト追加を行う前の状態のファイルを再編集したところ、
if文も期待通りに分岐するようになりました。
また、このときのConfigテーブルは2フィールド、1レコードと表示されています。
if文がうまくいかない→変数に格納される値がおかしいとき
変数を設定 [$$TEST1; 値: ExecuteSQL( "SELECT DeviceVer FROM Config"; ""; "" )]
→ "iPhone6"
"iPhone6
"
変数を設定 [$$TEST2; 値: ExecuteSQL( "SELECT zg_DeviceVer FROM Config"; ""; "" )]
→ "iPhone6 iPhone6"
変数を設定 [$$TEST3; 値: ExecuteSQL( "SELECT * FROM Config"; ""; "" )]
→ "iPhone6 iPhone6
iPhone6"
"iPhone6,iPhone6
,iPhone6"
変数に想定通りの値が格納されるとき
変数を設定 [$$TEST1; 値: ExecuteSQL( "SELECT DeviceVer FROM Config"; ""; "" )]
→ "iPhone6"
変数を設定 [$$TEST2; 値: ExecuteSQL( "SELECT zg_DeviceVer FROM Config"; ""; "" )]
→ "iPhone6"
変数を設定 [$$TEST3; 値: ExecuteSQL( "SELECT * FROM Config"; ""; "" )]
→ "iPhone6
iPhone6"
"iPhone6,iPhone6"
FileMaker Pro 17 Advanced / Windows 10
システムAにはConfigというテーブルがあり、そのテーブルには
zg_DeviceVerとDeviceVerという2つのフィールドがあります。
利用者がiPhone端末の機種を選択するレイアウトがあり、
レイアウト編集画面右部で、
データを表示「Config::zg_DeviceVer」
コントロールスタイル「ドロップダウンリスト」
値一覧「DeviceVer」
と設定しています。
値一覧には「iPhone6」「iPhone6Plus」・・・
とiPhoneの世代を表す複数の値(文字列)が格納されている状態です。
この状態で「データベースの管理」を確認すると、
Configテーブルには2フィールド、1レコードと表示されます。
iPhoneX端末のレイアウト追加を試みたところ、
選択した端末情報のif文分岐がうまくいっていないことに気付きました。
原因調査の結果、
変数を設定 [$$DEVICE_VER; 値: ExecuteSQL( "SELECT DeviceVer FROM Config"; ""; "" )]
というスクリプトで取得した変数 $$DEVICE_VER の末尾に改行が入っていることが
if文分岐不正の原因となっていたことがわかりました。
また、「データベースの管理」を確認すると、
Configテーブルには2フィールド、2レコードと表示されました。
このレコード数は何を表しているのでしょうか?
また、どのようにすればレコードの中身を確認できるのでしょうか?
状況が伝わりにくい文章となっておりましたら申し訳ありません。
何かしら助言をいただけるととても助かります。
emiさん
Shinさんのおっしゃる通り、
FMPについてもFMS14に対応している旨記載ありますね。
FileMaker Pro 16 および FileMaker Pro 16 Advanced の動作環境
余計なことを言いました、すみません。
Shinさん
ご指摘ありがとうございました。
念のためですが、環境
> winserver2002R2
winsercer2012R2 の間違いですかね。
> だいぶ前に購入したfmpro16をクライアントにインストールしたいのですが
> fmserver14をバージョン14.04.412.1に更新しなければいけないそうです。
x、yを
x:FMSのバージョン
y:FMS ver.x がサポートする FMPA(FileMaker Pro Advanced)のバージョン
としたとき、xとyの関係は、原則 x > y ではないかと思うのですが、
バージョン14.04.412.1に更新すれば良いというのはどこかに記載があったのでしょうか。
FM14 技術仕様:https://www.filemaker.com/jp/products/filemaker-server/server-14-specifications.html
現にFM17、18のシステムでもテスト的にFMS16上で動かせてはいるので、
FMSのバージョンがFMPAを下回っていても動くとは思いますが・・・。
「ダウンロード」フォルダを空の状態にし、
インストーラフォルダにある「Files」フォルダにライセンス証明書ファイルを置く。
この条件でFMS17、FMS18両方のインストーラを起動してみましたが、
FMS17:ライセンスキーを認識する
FMS18:ライセンスキーを認識しない
という結果となりました。
(ライセンス証明書をどこにも配置しなければFMS17のインストーラを起動した際も
FMS18のときと同様、ライセンスキーの欄が表示されません。
ちなみにWindows 10でもちゃんとライセンスキーを認識するようでした。)
一度ポート80、443がフリーな状態で評価版のインストールをし、
その後インポートする方法も試してみます。
それでもダメならWS2008R2では完全アウトということになりますね。
少なくともインストール時のライセンス認証に問題がありそうなので、
端末を変えることを検討します。
予算云々ではなく、OSを変更すべきであることの理由付けができました。
ありがとうございました。
FMS は、OS のバージョンに敏感ですので、サポート外の話は意味がないので、おしまいにしましょう。
そもそもサポート外なので原因追究もあまり意味を成さないかもしれませんね。
何度もすみません、ありがとうございました。
FMS18のインストール時はライセンス証明書の確認をする際にもインターネット接続を要する
→ポート80、443を使う
ようになった、などの変更が加わったのでしょうかね。
一旦[解決]とさせていただこうと思います。
何度もスレッドをあげて申し訳ありませんでした。
また、インストーラを起動していくつかの項目を入力したのち、所属を入力して次へ進もうとすると、
「ライセンス証明書が見つかりませんでした。」というメッセージが表示されます。
ライセンス証明書はダウンロード時のファイル名から変更することなく、「ダウンロード」フォルダに
置いてあります。
③この現象もポート80、443が使用中であるため発生しているのでしょうか?
それとも他の原因が考えられますでしょうか?
上記引用文の事象について検証していたところ、
FMS17とFMS18で、ともに「ダウンロード」フォルダに同一のライセンス証明書を置いてインストーラを
起動しているのに、FMS18でのみライセンス証明書が認識されない
ということがわかりました。
(「ポート80、443が使用中のためインストールを開始できない」という事象は、
上記引用文の問題をひとまず無視し、「評価版」をインストールしようと試みた際に発生していました)
FMS17では上記引用文の現象は発生せず、所属欄の下にライセンスキーの欄が表示されました。
一方、FMS18では所属欄のみが表示されており、ライセンスキーの欄が表示されません。
FM17の公開後、インストーラ起動時にライセンス証明書を置いておくフォルダについて、
(1)パスに全角文字が入っているとライセンス証明書を認識できない場合がある
(2)「ダウンロード」フォルダに置いておく必要がある
などの情報を見たことがあります。
FMS17から18になったことで、サポート外のOSではライセンス証明書を認識できなくなったのでしょうか?
何かご存知の方がいらっしゃいましたらご教示いただけますと幸いです。
インストールしようとした際にポート80、443が使用中となる件は
別のWebサーバと併用していることが原因となっていそうですね。
担当者と会話して一度試してみようと思います。
ご回答ありがとうございました。
FileMaker Server 17の技術仕様のページで、すでに
Windows Server 2008 R2 SP1 Standard Edition および Enterprise Edition はサポートされません。
との記載がありますね。
Windows Server2008が使えるのはFMS16まで、という記憶がおかしくなっていたようです。
環境を整えることが先決なようですね。
ご指摘ありがとうございました。
FileMaker Server18をインストールする際にわからないことがありましたので質問させていただきます。
環境は以下です。
OS:Windows Server 2008 R2 Standard
プロセッサ:Quad-Core 2.40GHz
メモリ:4GB
その他:Webサイトの公開を行っているサーバに併設しているため、
ポート80、443は使用されている状態かと思われます。
FileMaker Server 17はインストールしておらず、FileMaker Server 16 から 18へのアップグレードを
行おうとしている状況です。
FileMaker Server 16をインストールする際には、
「FileMaker Serverがweb接続で使用するポートを指定する」ことができたかと思います。
FileMaker Server 18のインストール時には同様の設定を行う画面は表示されず、
インストールを開始しようとすると、
「インストールするにはポート80および443が使用可能である必要があるが、既に使用中」
という旨のダイアログが表示され、インストールを開始できません。
ダイアログには「Webサイトを無効にする」というボタンもありますが、
①これをクリックすると即座に使用中の80、443ポートが開放されるのでしょうか?
それともファイアウォールの設定画面などが表示されるのでしょうか?
(Webサイトの公開は、私以外の者により行われているため、勝手に止まってしまうのは困ります)
②FileMaker Server 16のように、使用するポートを指定することはできないのでしょうか?
また、インストーラを起動していくつかの項目を入力したのち、所属を入力して次へ進もうとすると、
「ライセンス証明書が見つかりませんでした。」というメッセージが表示されます。
ライセンス証明書はダウンロード時のファイル名から変更することなく、「ダウンロード」フォルダに
置いてあります。
③この現象もポート80、443が使用中であるため発生しているのでしょうか?
それとも他の原因が考えられますでしょうか?
FileMaker Serverをインストールするサーバ機の、別のサービスとの併用は推奨されていないこと、
メモリが動作環境を満たしていないことは承知していますが、
予算の都合上このような環境となってしまっています。
ネットワークの知識も疎く、また要領を得ない文章で申し訳ありませんが、
上記①~③について情報をいただけますと幸いです。
Pages: 1
[ Generated in 0.007 seconds, 6 queries executed - Memory usage: 683.48 KiB (Peak: 720.89 KiB) ]