Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

This topic is 7498 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

I need to convert a paper flowchart system of asking questions to Filemaker Pro. This is for a family Tech Support. The system would need to be able to ask a question by the Tech Support. Then based on the answer (yes or no)another pop up will come up and ask the next question.

Is this possible in Filemaker Pro? And if so then where would I start. I thought maybe it would start with a question database and then based on a checkbox answer to the question it would be related to an answer database.

Help, I really need to have some family members help with my calls.

Thanks in advance.

Posted

well basically, one file holds all the questions and answer ponters to the next question.

each record would be a question like 'is the power button on?' and then in a field in that record would be a pointer ID to the next question to ask. A script would then goto that record and ask that question, compare the answer to the referenced recods and goto the appropriate one. This method makes it very scalable and you can create circular paths to retry things like 'Reboot again to complete the instalation'

hth

Charles

Posted

I now have one file with fields of Question, Pointer ID, Answer (Checkbox that is yes or no). I think I understand that you want me to write a go to record script that would be based on the answer in the checkbox. I am completely stuck on this process. I can talk it out loud to myself as follows.

Question: Is the power button on?

Answer: (Checkbox) Yes or No User clicked yes

Then goto Pointer ID: M2

Which would bring up next question.

Now for some reason I can't get that to Scriptmaker.

I really am stumped on the scriptmaking?

Thanks for your help

Posted

Here's one possibility, though you may need to add extra GlobalIDs to track the history of the session so your user can backtrack.

The Question file has these fields:

RecordID

AnswerYesID

AnswerNoID

QuestionText

Resolution?

Create a relationship "AnswerYes" between AnswerYesID and RecordID

Create a relationship "AnswerNo" between AnswerNoID and RecordID

This could be done with a Custom Dialog in a loop (This could also be done with a layout instead of a Custom Dialog):

<Starting from first question>

Loop

If [ Resolution? ] //If the current record is flagged as a resolution then show the resolution

Show Custom Dialog [ "Resolution", "QuestionText" ] //with button "OK"

Go to Layout [ main layout ]

Halt Script

End If

Show Custom Dialog [ "Trouble Shooter", "QuestionText" ] //with buttons "Yes","No","Cancel"

If [ Status(CurrentMessageChoice) = 3 ] //Cancel

Go to Layout [ main layout ]

Halt Script

Else

If [ Status(CurrentMessageChoice) = 2 ] //No

Go to Related Records [ Show, AnswerNo ]

Else //Yes

Go to Related Records [ Show, AnswerYes ]

End If

End If

If [ Status(CurrentFoundCount) = 0 ]

Go to layout [ main layout ]

Show Message [ "No resolution found" ]

Halt Script

End If

End Loop

Forgive any errors in that. The general idea is a tree structure, where each question is a branch on the tree. The leaves on the tree are the records with Resolution? = 1, on these you would type the resolution in the QuestionText box. The only tricky part is populating the tree with the correct pointers to yes/no branches and resolutions.

Hope that helps.

Posted

I assume that each record will have a primary key Serial Number.

Each record will have 2 pointers, on for Yes and one for No.

The answer field will be a checkbox or radio button. There are 2 self-relationships Yes is Yes Pointer = :: Serial Number and No is No Pointer = ???:Serial Number.

Put a small transparent button over each checkbox or radio button. Write a script for each.

For the Yes box use somethin like this:

Set field [Answer; "Yes"]

Preform script [go to next card]

The go to next card script would be something like

If Anser = "Yes"

Go To Related Record [Yes Relationship]

else

Go To Related Record [No Relationship]

Posted

Try Ralph's method.

The nice thing about doing this on a layout instead of a Custom Dialog, is you can include graphics as part of the question or resolution. You also don't need to worry too much about users getting stuck in an infinate loop from bad pointers (they can close the file easily.)

I still think the resolutions can be records within the Question file, just use a different layout.

Posted

First of all thank you to all that replied. It has helped me tremendously.

Ralph,

I tried your example:

File: Monitor

Fields of:

Serial Number, Yes Pointer, No Pointer, Question Text, Answer

The answer field is a checkbox using value list called New Value List. It is a custom list "Yes" "No"

2 Relationships:

Yes Relationship is Yes Pointer=:Serial Number

No Relationship is No Pointer=:Serial Number

Yes Box Script:

Set Field [Answer="Yes"]

Perform Script [Go to Next Card]

No Box Script:

Set Field [Answer="No"]

Perform Script [Go to Next Card]

Go to next Card Script:

If ["Answer="Yes"]

Go to Related Record ["Yes Relationship"]

Else

Go to Related Record ["No Relationship"]

End if

The No Box Script works great.

The Yes Box Script acts as a No Box

Help, so close yet so far

Thanks

Posted

Ralph,

Yes I have two separate boxes. One over the yes and one over the no.

I also checked the yes and no pointers to make sure they weren't miss keyed.

I took out all the no answers and when I clicked the yes button it did nothing but blink.

Anything else. I would be willing to send you the file if it would be easier to see what could be wrong

Thanks

Posted

The only other thing I can think of is to check the buttons to make sure they are using the correct script. Do you set the Answer field to NOT allow entery into the field. You might add a text field Answer to the layout to see what is in that field.

Sorry but I will not be able to work on it until next week. I did make a little file of my own and the check boxes work.

Posted

After looking back at your example I see that you have the Yes Box to read Set field[Answer;"Yes"]

I have it to read Set field[Answer="Yes"]

Just grabbing at straws. Thanks for you help

Posted

Good catch. You need to have it as Set Field [Answer, "Yes"], where Answer is the field specified and "Yes" is the calculation specified.

Posted

Thank you to all that took the time to help. To give you a little background, Our Family helps elderly and kids that couldn't afford to learn or have the luxury of technology. We have donated quite a few computers and found that they require help after the delivery.

And now that Our Family Tech Database is working splendidly, we will be able to help more in a shorter time frame. Hopefully our questions also help someone else someday.

Thank you again for the help.

This topic is 7498 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.