Jump to content


  • Content count

  • Joined

  • Last visited

  • Days Won


LaRetta last won the day on July 24

LaRetta had the most liked content!

Community Reputation

479 Excellent


About LaRetta

  • Rank
    Lifelong FM Student

Profile Information

  • Title
  • Industry
  • Gender
    Not Telling
  • Location

FileMaker Experience

  • Skill Level
  • FM Application
    16 Advanced

Platform Environment

  • OS Platform
  • OS Version
    El Capitan
  1. Now THAT is beautiful.
  2. jjjjp, what you have wrong in your file is this: Body top is 50 Bottom bottom is 150 Your line top is 50 ... this is correct. Your line bottom is 150 ... wrong. As Comment said ( and displays in his file ), the line must extend below the body.
  3. Counting the number of checked boxes in portal rows

    I agree, of course, but make sure that the Participants::Inactive field does not contain zeros because they would be counted. Using Sum() might be better for that field as: Count ( Participants::ClassID ) - Sum ( Participants::Inactive ) I am also basing my post on Inactive being a boolean number containing 1. If it is text then Comment's response is best. :-)
  4. How to do Montly backups

    True! Glad you figured it out, Jason!
  5. Hide Empty Portal

    Hi Mike, IsEmpty() was designed for this purpose so we use it. It is also more clear. IsEmpty() is a boolean test so yes, adding a 'not' at the beginning would reverse the result. Without the help of others on this forum, I can't imagine how less competent I would be as well! :-) Nope, I will not. Asking questions is a wonderful trait.
  6. Hide Empty Portal

    Hi Mike, you can also just wrap it with IsEmpty() which is what I suggest you do. Using =" " isn't the best choice. So try: IsEmpty ( GetLayoutObjectAttribute ( "PKinPickClientPortal" ; "content" ) )
  7. So close - one piece of portal puzzle missing

    Aleesha, I just want to be sure you understand this point: It does NOT create records in the Activity table but only in the Affiliates table which appears in that Affiliates portal. It only displays on the Activity layout because they are now related. So, if you are on Activities and you want a unique list of the last time you saw Elsa even if it was on ANOTHER Activity other than the current one currently being viewed? Is THIS what you want displayed in that portal? Hey, don't get discouraged, this isn't the easiest form of communication. We'll get there. :-)
  8. Printing in different orientations

    Create two scripts: Name: Print: Portrait Print Setup [ Restore ; Dialog Off ] ... and set the orientation to portrait Repeat with Print: Landscape Then use script trigger attached to the layout ( Layout> Layout Setup > Triggers tab and select the script as a trigger to the OnLayoutEnter. Now it will automatically switch to the correct orientation.
  9. So close - one piece of portal puzzle missing

    I also want to explain that you saw the 3 because you didn't have a popup list attached to the field. Popups insert the ID but DISPLAY the name. If you re-select the 3 and select Elisha, it will correctly display, same with the others - re-select them.
  10. So close - one piece of portal puzzle missing

    Here is how we force refresh. Script trigger attached to the Affiliations::ActivityID field that, when modified refreshes the lower portal. Notice that I object named the lower portal. This makes it update immediately. People and Activities_MOD2.fmp12 We cross posted. Please stand by while I review your file. :-) ---- after reviewing ---- In Activities, Person portal ... the first two records were inserting the person's NAME into the personID field. Go to your Affiliations table and check it. Delete those two records. It should insert the ContactID not name. To know, create a value list named People. Base it values based upon field, People and select ContactID in the left pane and full name in right pane. Below, specify display all values. Just duplicate how I set up the Activity value list. Then go to your Activity table person portal and on the ContactID, change it to use popup based upon the new People value list. By the way, it is simpler if you name the table the same as its primary ID, in this case 'Contacts' or rename the ContactID to PersonID.
  11. So close - one piece of portal puzzle missing

    I should also mention, Aleesha, that sometimes we use script triggers to force a refresh if a portal really needs to display immediately but it depends upon what you're doing because if you are adding multiple Affiliate records, the lower Activities portal will update once you move on. You will also want to probably show scroll bar on the portals.
  12. So close - one piece of portal puzzle missing

    Well, that's what the Affiliations table does. You must tell the computer that 'this Contact wants to attend a certain Activity so you select the Activity. One the relationships knows the ContactID and the ActivityID for the Affiliations table, you're set to go. Committing the record is necessary for the Activity relationship to 'see' the new Affiliations record. The People::ContactID is related to the Affiliations::ContactID so when you create an Affiliation record, the ContactID is automatically inserted into Affiliations to assist in the relationship. But it still needs to know which Activity and when you choose the Activity in the Affiliations table, the Affiliations record isn't REAL to the Activities relationship until you commit or exit the portal. But if you are displaying the Affiliations portal, why do you need to also display the unique Activities portal? That lower Activities portal will never display an Activity record that the current person isn't a member of. Asking questions is always okay here, Aleesha. :-) Are you actually looking for a way of displaying ALL ACTIVITIES in a portal, even ones the person does not belong in? I guess I should have asked you for the specific purpose first.
  13. So close - one piece of portal puzzle missing

    The table below is the Activities table. When you select the Activity in the upper Affiliates table, it inserts both the ContactID and the ActivityID into the Affiliates table. Since the Affiliates table is linked to Activities, that relationship (for that Contact) is now complete and the unique Activity will now automatically appear in the lower Activities portal. You will have to commit the record (click outside the portal or into another field) to see it appear below. A global field's value is the same for every record in the table so if you typed a 1, ALL Contacts would then have ContactID 1 which isn't what you want. Global fields can be accessed from any other table without a relationship and they are handy mostly for Developer work but for real data, you want to use stored values. In the case of ContactID, you need a unique serial for every Contact record so you can tell one from the other.
  14. So close - one piece of portal puzzle missing

    You had browse mode unchecked on the ActivityID field in the portal so you couldn't create the new record. But it's also important that ContactID not be global. :-) I originally thought you wanted a portal showing only the unique Activities, which is why I gave you both. :-)
  15. So close - one piece of portal puzzle missing

    Hi Aleesha, Your Lookup layout is actually your Contact layout. It would be where you list Contact data and display a portal to Affiliations and add an Activity to the Contact. BTW, you had ContactID set as a global field which won't work so I changed it back to regular auto-enter serial number. So now you can add Contacts to the join table. Below that, I placed a portal to Activities which lists only the activity they attended. This portal might or might not be needed but if you wish for a unique list of Activities they attended, then you can use it that way. Turn off entry to fields in Activity and do not check 'allow creation' into the Activity table. Notice I created a value list of Activities (the ID and also displaying the description) to make selecting an Activity easier. People and Activities_MOD.fmp12

Important Information

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