初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2022-08-05 14:49:15

post
Guest

TopCallStatsファイルについて

お世話になります。
FileMaker Server 19から出力したTopCallStatsファイルのターゲット列に記載の
「ファイル名::テーブル(120)」という値のテーブル番号?から、どのテーブルオカレンス名かを判別したいのですが
不可能でしょうか?

#2 2022-08-05 15:07:52

Shin
Member

Re: TopCallStatsファイルについて

DDRで、DataSource または、RerationshipGraph をみればわかります。

Offline

#3 2022-08-05 15:16:02

himadanee
Guest

Re: TopCallStatsファイルについて

https://help.claris.com/ja/server-help/ … l-log.html
にはテーブルIDと書いてあるけど、違うのかな?

#4 2022-08-05 15:34:10

post
Guest

Re: TopCallStatsファイルについて

ご返信ありがとうございます。

himadaneeさんのリンク先にある「ターゲット」という項目に記載の「テーブルID」で間違いありません。
公式に確認したところ、テーブル、テーブルオカレンス、フィールドといったものが作成されるタイミングで
特定のIDを自動割り振りしているとのことです。
テーブルIDが、どのテーブルオカレンスに紐づいているかはデータベースデザインレポートを見た感じ記載されておりませんでした。
※ブラウザのページソース上にしか表示されない等であれば、そこまで確認できておりません...

#5 2022-08-05 16:11:52

himadanee
Guest

Re: TopCallStatsファイルについて

テーブルIDなら、色々方法はありますが一つには関数で計算(最後の引数にIDを入れる)
ExecuteSQL ( "SELECT tablename FROM filemaker_tables WHERE tableid=?";"";"";1065090)

1065090は、このファイルの2つ目のTOのものですが、質問の120というのは古いバージョンで作ったファイルなんでしょうかね...

#6 2022-08-05 16:25:43

post
Guest

Re: TopCallStatsファイルについて

ご返信ありがとうございます。

そうですね。古いバージョンで作成したfmファイルとなります。
なので、数字が120とかになっているんですかね・・・・
とりえず、SQLで取り出し出来るか確認してみます。

#7 2022-08-05 17:05:31

post
Guest

Re: TopCallStatsファイルについて

度々すみません。。。

例えば、TopCallStatsのターゲット列の項目が
「ファイル名::テーブル(130)::フィールド定義(19)」のような場合は、

<テーブルの場合>
ExecuteSQL ( "SELECT TableName FROM FileMaker_Tables WHERE tableid=?";"";"";130)

<フィールドの場合>
ExecuteSQL ( "SELECT * FROM FileMaker_Fields WHERE FieldId=?";"";"";19)

で、良いのでしょうか・・・?

#8 2022-08-05 17:08:12

post
Guest

Re: TopCallStatsファイルについて

SQLが違いました。

<フィールドの場合>
ExecuteSQL ( "SELECT FieldName FROM FileMaker_Fields WHERE FieldId=?";"";"";19)

#9 2022-08-05 17:38:27

himadanee
Guest

Re: TopCallStatsファイルについて

テーブルの方は、DDRでもいいですが「ツール>名前を付けてXMLとして保存」の方でXMLファイルを保存する方が簡単ですかね。テキストエディタで開いて
TableOccurrenceCatalog
を検索すれば情報が見つかります。多すぎて見づらいかもしれませんが。

SQLでフィールド名をやるにはテーブル名も指定しないと
ExecuteSQL ( "SELECT FieldName FROM FileMaker_Fields WHERE tablename=? AND FieldId=?";"";"";"テーブル名";19)

#10 2022-08-05 17:44:27

Shin
Member

Re: TopCallStatsファイルについて

<RelationshipGraph> の <TableList> にありますよ。

Offline

#11 2022-08-08 10:35:54

post
Guest

Re: TopCallStatsファイルについて

ご返信ありがとうございます。

DDRでの確認方法がいまいちわからず、Shinさんが仰っている<RelationshipGraph> の <TableList> に
IDらしきものを見つけられませんでした。。。

ExecuteSQLでテーブル名とテーブルIDは抽出できましたが、TopCallStatsに記載のテーブル(130)は見つけられませんでした。
※接頭に1065がついたテーブルがいくつかあり、その中で1065130というものはありました。

#12 2022-08-08 11:36:03

himadanee
Guest

Re: TopCallStatsファイルについて

もしかして、このログのテーブルIDというのがベーステーブル(TOでなく)のIDなのではなかったかな?
DDRでデータソースの方を見ると、v19で作ったファイルでも
<BaseTableCatalog>
    <BaseTable id="129" records="16" name="recursive">
129から始まってました。

IDのリストを見たければ、デザイン関数もあります。こっちはTO情報しか得られません。
https://help.claris.com/ja/pro-help/con … tions.html

#13 2022-08-08 14:44:28

post
Guest

Re: TopCallStatsファイルについて

ご返信ありがとうございます。
BaseTableCatalogで検索したら、それらしきものが出てきました...
クラリスのカスタマーサポートに問い合わせした際は、TopCallStatsのテーブル(130)はテーブルオカレンスですよ
とは言われたんですが、基本となるテーブルの番号っぽいですね。

解決しそうです。ありがとうございました。

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 8 queries executed - Memory usage: 524.08 KiB (Peak: 528.98 KiB) ]