2 Replies Latest reply on Sep 8, 2014 1:27 PM by calebmiranda

    progressive questionary - structure of database



      progressive questionary - structure of database


      Hello fellow developers. I have a question that is more database related than filemaker related, but as fmp has some features that are peculiar, maybe the answer is different for fmp (reason why I'm asking in this forum).

      I need to do a automatic system for the employees to know how to act (like a instruction manual). But, my problem is, I'm having trouble on designing the structure of my database. The idea is that a question leads to other question, gives answers to others, etc. Let me give a example.

      Let's say my company sells all sort of electronic devices. A customer comes in, and the following questions are asked by the vendor:

      Vendor: - what do you need?

      Customer: - I need to buy a computer.

      Vendor: - what sort of operational system do you need?

      Customer: - I want it to be a Mac OS

      V: - does it need to be new?

      C: - no

      V: - how many do you pretend to buy?

      C: - 17

      V: - will they connect to some network?

      C: - yes

      V: - how?

      C: - wifi

      V: - which configurations do you need for each machine?


      and the questions go on. The problem is, the complexity of the questions are making me have a hard time.

      1) The entry mode for the answers:

      When the customer says he want Mac OS, he must have a list of OSs to choose from (list entry mode). When he says, I don't want to be new, he is making a boolean choice. When he says 17 computers, he's doing a numeral entry mode, and then I'll have to allow him to make choices for each computer.

      2) The schema of next questions based on answers:

      some answers answer other question. For example, when the customer says I need to buy a computer (choosing from a list), we ask the operational system, as we would if he wanted to buy a cellphone or tablet. But if he needs to buy a router, this question is irrelevant. On the other hand, if he says they will be connect to the network by wifi, I know that the answer to the question "does the computer needs to have ethernet port?" is a no. So we have answers that make other questions irrelevant (router -- OS), some answers that answer other questions (wifi -- need for ethernet), and some answer request more answers (Mac OS -- does it need to be able to use the latest build of OSX)?


      thanks for the help so far.

        • 1. Re: progressive questionary - structure of database

          You might find this thread to be a source of ideas: Need aid on generating a report from a survey layout.

          In particular, you need each question to be a separate record so that you can you the answer to the question to find and display the correct follow up question(s).

          For Entry mode, a field in the question record can be used to identify the type of response needed, even control what list of values appear in a value list. The script that selects the next question record can also switch layouts to adjust for different entry methods or it can use go to object to select different panels of a tab or slider control to present the user with a field formatted for the correct data entry method needed for that question.

          And there is a very high likelyhood that you will need to use condtional value lists as part of your user interface design. If this is a new topic for you in FileMaker, see this file: https://www.dropbox.com/s/8phiqrgpts4drre/Adventure%201%20CVLs.fmp12?dl=0

          Caulkins Consulting, Home of Adventures In FileMaking

          • 2. Re: progressive questionary - structure of database

            Phil, I've read the topic ( the first comments , which are relevant for this discussion too ) and have downloaded the file about the conditional list (will soon work on it also). And I thank you on the help.

            But there is one question that still seems odd to me. Please, allow me to make an example more elaborated.

            I'm in a real state registering group. As far as my knowledge knows, it differs a lot around the world and I'm not aware of your location, so I'll just explain basically: we receive transaction documents about real state and see if they obey the legal requisites and are, therefore, apt to being registered (as in, transferring the property, making a mortgage, etc)


            The problem is, the real state legislation is way complicated. It has lots of different cases, exceptions, etc. So we'd like to have a all-solving process for qualifying a title (qualify - the action of verifying if a certain document fulfills all the legal requirements in order to be registered).


            With that in mind, let me put some situation:

            If someone want to make a mortgage in a rural property, they must indicate us the Rural Property Certificate Number (in brazilian portuguese the acronym is, CCIR - Certificado de Cadastro de Imóvel Rural). So, mortgage + rural property = present CCIR

            if someone want to notice the death of a rural property owner, they DO NOT need to indicate the Rural Property Certificate Number (CCIR)

            if someone want to make a mortgage in a urban property, they DO NOT need to indicate the Rural Property Certificate Number (CCIR), for urban property has another number, which is optional.


            So, we have the following:

            mortgage + rural = CCIR

            death + rural = Don't need CCIR

            anything + urban = Don't need CCIR


            the question is: how could it work, with a abstraction level (I don't want to program it about the CCIR; I need a database that can handle this type of "if" "and" "or" "when", etc by the records).

            I will present the questions:

            1. what kind of document do you have ?

            2. is the real state rural?


            but how will I make the structure that, if one answers that the document does not need CCIR, it doesn't asks about it? (same with urban property)


            I'd love to say we have just this particular case in which this kind of thing is needed. We have lots of situations, always like that.

            Also, I'll contact you on facebook.