Jump to content

ArchFile

Members
  • Content Count

    16
  • Joined

  • Last visited

Community Reputation

0 Neutral

About ArchFile

  • Rank
    member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Ha ha! It worked! That is, your instructions from earlier were very clear, but since I am inexperienced (what is a self-join relationship? How do portals work again?...etc...) it took me time to figure out exactly what to do. Now it makes perfect sense why you said to enter all related contexts as a return-separated list into a single text field. THANK YOU for sticking this out with me, the archaeology gods are looking down upon you favorably.
  2. All very helpful guidance. I will report back once I have time to play with all this and learn the steps. Cheers!
  3. Just to clarify before I get started: Can I still generally follow the steps you laid out but maintain the individual fields (one context to each field) or will this method only work if I enter the contexts into a single field as a return-separated list as you suggested? Thanks a bunch.
  4. Thanks so much for your thoughtful response. You make a good point on combining the related contexts into a single field. That does make practical sense. The only downside to this is that the flowchart layout is based on existing conventions in archaeological data recording (albeit I am taking a recoding method traditionally written on a paper form and trying to digitize it in filemaker). The related contexts, as shown in my mini flowchart, will be used as a guide to create a master flow chart, or "matrix" of all excavated contexts, which ends up looking like a giant tree (this is created in a separate flowchart program). Students are also users of this digital form, and therefore, I think it is important to maintain that each context is represented in the tree by a box with a single context number inside it. This mini flowchart is thus a way to visualize, at a glance, the relationship of the current context to the surrounding/previously excavated contexts. Because visualization is key, I wanted to have the brief description of these related contexts displayed next to each context number, so that the user doesn't have to navigate to these records in the database to remember what they were. However, your suggestion sounds very promising. I will give it a go; I've never completed the steps you suggest (creating a second occurrence of a table and using a portal, etc), but it sounds reasonable and logical. Thank you for your help and patience!
  5. That's right, a context can be related to any number of other contexts. 1. Yes, 233 can be legitimately selected as the earlier context to more than one context. 2. I think the answer to this question is no, or at least I can't think of anything. In terms of your specific example, the order does not matter: I named each field with a 1 2 and 3 only to have a unique name for each of these field in the database.
  6. Thank you for the response. There are currently no joined relationships, although I am wondering if that is something I need to do to achieve what I want? Concerning the setup, I can imagine it seems weird, and I'll try to better explain because it may help find a solution. I'll try to spare you a boring archaeology lesson, but some explanation seems warranted to explain the logic here. Also, apologies on not knowing all of the Filemaker terminology, I am still learning. The three "C_earlier" entries located above the current record's "Context" are not the three most recent records, nor are they based on any calculation. These numbers must be manually entered by the user because they are based on observation. Archaeologist users can enter any of the previous contexts (from 1 until the number of the current record) that the they have excavated and that are entered into the database as a record. Thus, an acceptable response in any of these three fields can be a Context number from the previous record in the set (in the case of my example, that would be Context "255") or the context from the very first record in the set (Context "1"); it is up to the archaeologist to know and enter the correct context number in these "C_earlier" fields. To simplify: perhaps forget that there are three C_earlier fields. Pretend there is only one: C_earlier_1. If the user choses "233" from the value list in C_earlier_1, I want to write a calculation for C_earlier_1_Desc to "Get" (I originally said "display" to describe the result I want but perhaps "Get" is the proper function?) the text from a field called "Description" in record 233. How would I write a calculation for "C_earlier_1_Desc" to do this? If calculations aren't necessary and this is simply a self-join relationship as you suggest, can you give me a few hints as to how to do this? I'm a newbie. (I agree to make the Description fields non-editable, that makes sense). Really, thank you so much.
  7. Just checking back in to say the straight up "Substitute" command worked perfectly, thank you both so much!! Easy and straightforward.
  8. Hi everyone. What I am attempting seems like it would be relatively easy for an advanced user but I can't figure out how to do it on my own. I don't think I have the proper vocabulary to fully describe the steps I want to take, so I will use screenshots to help illustrate what it is I want to do. Thanks in advance to anyone who can help. This may look crazy, but the chart is common in defining relationships of excavated contexts in archaeology. "Context" serves as my unique ID for each record in the table; the table is called "FContexts". When creating a new record, a new Context number is added, but these numbers are added as text entries, not auto generated as serial numbers (if that matters). These Context ID numbers are also populated in a value list called ContextNumbers (via the option "Use values from field: "FContexts::Context"). In the example shown in the screenshots, the context number of the current record is displayed in the field "Context" in pink. Clicking on fields "C_Earlier_1", "C_Earlier_2", or "C_Earlier_3" will display this value list ContextNumbers as a pop-up menu. Users can chose any of the populated ContextNumbers values as an acceptable response. Here, I have chosen 213, 223, and 228 as entries in these three fields: Now, because 213, 223, and 228 represent other records in my table, and because they also serve as unique IDs, I now want to be able to pull the text from a text field in each of these records and display it in the associated fields "C_Earlier_1_Desc", "C_Earlier_2_Desc", and "C_Earlier_3_Desc". The field I want to display here is a text field called "Description". So, any ideas on how to get the Description entries from 213, 223, and 228 to display in the associated text boxes above them? I assume it would be possible by defining a calculated value for the fields "C_Earlier_1_Desc" etc. but I don't know how to build an adequate calculation for this. Would I use some sort of Get function? Thank you for any help!
  9. Hello! I have a list of attributes in a field that are displayed as a checkbox set. Thus, multiple selections can be made for this field. I have updated my value list for this checkbox set in order to refine it for my current needs. The value list change 1) collapses the value list to provide fewer options that someone could select (eliminates vague values leaving only the more precise ones) and 2) updates the wording of the value list to eliminate confusion. I now want to update the responses to this field by using Replace Field Contents: that is, replace entries that were recorded using the old value list with a corresponding value from the new value list. However, since this is a "check all that apply" checkbox set, I'm not sure what to do as there will be multiple values to find/replace. By replacing the field content, I also want to delete any existing content. I aim to design a Replace calculation, preferably using Case, that uses verbatim the old value list (test 1) and tells it what to replace each value with (result 1) which is verbatim to the new value list, which appears as a checkbox set (note: adding "other" was never an option). What I have done does not work: it isn't deleting the old data (I copied the field in duplicate and displayed it as an edit box so I know the values are still there) nor checking any of my checkboxes using the new value list, so I am doing this all wrong. I don't have much experience using Case. Here's my unsuccessful trial: Case( DecorationTechnique = “Incised”, “Incised leather-hard paste”, DecorationTechnique = “Leather-hard paste”, “Incised leather-hard paste”, DecorationTechnique = “Wet paste”, “Incised wet paste”, DecorationTechnique = “Etched”, “Etched/Engraved”, DecorationTechnique = “Painted”, “Painted - Positive”, DecorationTechnique = “Painted Positively”, “Painted - Positive”, DecorationTechnique = “Painted Negatively”, “Painted - Negative”, DecorationTechnique = “Molded”, “Mold-made”, DecorationTechnique = “Modeled”, “Modeled (Hand-sculpted)”, DecorationTechnique) Old value list: Incised Leather-hard paste Wet paste Etched Painted Painted Positively Painted Negatively Molded Modeled New Value list: Incised leather-hard paste Incised wet paste Etched/Engraved Painted - Positive Painted - Negative Mold-made Modeled (Hand-sculpted) Desired result: say, if one my records contains three attributes in the field -- “Incised”, “Leather-hard paste” and "Molded” -- and I want to replace these attributes with “Incised leather-hard paste” and “Mold-made” (which would successfully collapse the first two attributes (which were previous selected using the old value list) into one attribute (that is present in the new value list) and keep the third attribute, but updates its wording. Advice? Should I be using "If" not "Case?" Thank you!!
  10. Nevermind, I figured it out. THANK YOU! Awesome help!
  11. It worked!! You've been ver generous with your time, thank you so much. You have made this lowly phd student's life a million times better. (For the record, I thought the variable name was going to create a folder of that name for the images to go into, which is why I named it so screwy, but now I get how the script works. And I'll play with the way I formatted "Get ( filepath )" to figure out what I was doing wrong there, so that I can dictate a specific folder I want them to go into). I am very happy with the results and can move ahead with my project. But I will throw one final question out there if you (or anyone) has a quick solution. The exported filename of each image is the unique identifier (for example "AE1453") followed by the .jpg's original filename (for example "IMG_2543"), so they show up like this "AE1453IMG_2534". Is there a way to add a space or a dash between these elements so that the files are more easily searchable and viewable, for example: AE1453 IMG_2534 or AE1453 - IMG_2534 ? Again, thanks.
  12. I made your suggested changes, but I am still doing something wrong, getting the same result: only one record is exporting. There are things I don't really understand in the script and that may be contributing to why I am getting the result I am. The script as I have it with your suggestions is included in the screenshots. I don't really understand how the Export Field Contents part of the script works. There are two parts to this, (1) "specify target field" and (2) "specify output file". I have uploaded a screenshot for each. For "specify target field", I chose my image container ("Fotografía") with the images I want to export and left the Repetition as "1". It allows you to specify a calculation for the Repetition, however. Should I be specifying a calculation here to make it go through all the records? (I also tried changing the Repetition to the number of records I have, which did scroll through all the records to try to export something, but it gave me an error for each record saying "Container fields cannot be exported." Luckily I am testing all this on a database with only two records so it didn't take all day to click "ok" for each error message...). For "specify output file", I assumed choosing "$Variable" here was the best option, hoping that because I had already chosen the "Set Variable" line of the script to access (1) the Image (PIARA_Analisis_Ceramica::Fotografía) and (2) the record's unique identifier (PIARA_Analisis_Ceramica::Nº de fragmento), that choosing "$Variable" for the Output location would allow the script to generate the images (from the container Fotografía) with its unique identifier (Nº de fragmento) as the filename. (As I understand it, that's what the script would ideally do, but I am inferring a lot here. Let me know if I am wrong on this and that I should expect some other output). However, again, only the image from the active record was exported, which had "$Variable" for its filename. In the place of "$Variable" for the Output location, I have also tried entering a different filename (e.g. "Images"), with the same result (only now the one exported image was named "Images"). The final thing I don't understand is the Get ( DesktopPath ) part of the Set Variable line of the script. I imagined I was supposed to actually enter a filepath here, but I couldn't get one to work, so I left it just as shown, "Get ( DesktopPath )". I hope this was also correct. Seriously, thank you for the time and help. I hope I was thorough in my explanation, but let me know if more information is needed.
  13. Awesome thank you so much for the quick response! It makes perfect sense: I'll try it now and report back.
  14. Hello! Disclaimer: I have worked with Filemaker for a few years, but I only have experience constructing simple scripts. In the database I am working with, each of my records has an image container field where I enter .jpg files. I need to export these jpgs. Because there are thousands of records, I don't have time to export them one by one by right-clicking the container and choosing "Export Field Contents". I need to find a way to batch export the images from this container for all records. I found this FM forum that seemed promising: http://help.filemaker.com/app/answers/detail/a_id/5822/~/exporting-the-field-contents-of-a-container-field And constructed the script from the instructions: Go to Record/Request/Page [First]Loop Set Variable [$filePath; Value: Get ( DesktopPath ) MyPics::Description & ".jpg"] Export Field Contents [MyPics::Picture; “$filePath”] Go to Record/Request/Page [Next; Exit after last]End Loop This script "works" for me, so I must have done something right, but it only exports the image from the active record. So, either I did something wrong or misunderstood how the script works. I assumed the loop would perform the script for all records from "first" to "last" but it did not. Is there anyone out there who perhaps knows what I am doing wrong or knows of a better script I could use to perform this seemingly straightforward operation? I would be very grateful.
×

Important Information

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