February 26, 201213 yr Hi everyone! I am trying to do something which I think it should be quite easy to implement. I have a layout (called Projects) from which I create new Budgets, which it is a different layout and table. Both tables are linked by a field in the DB. Therefore, what I am trying to do is a script which goes from Projects to the other layout and create a new record. My problem is the following; I need to link both tables inserting the value of the field id of Projects table to the field projectID of Budgets table. I am getting an error because the field projectID is not in the Budgets layout. What I am trying... set Variable [$code;Projects::Code] goTo Layout [budgets] new Record/Request Insert Calculated Result [budgets::projectID;$code] --> At this point, I am getting error number 102 (Field is missing) I know I could solve it including the field in the layout, but I am sure there is an elegant way to do it! I hope I have clearly express myself. Thank you in advance!
February 26, 201213 yr This is (one) of the problems in using Insert Calculated Result ... it must be on the layout. Use Set Field [ ] instead and see how it goes. :^) Set Field [ ] is always the preferred step. This is (one) of the problems in using Insert Calculated Result ... it must be on the layout. Use Set Field [ ] instead and see how it goes. :^) Set Field [ ] is always the preferred step.
March 6, 201213 yr insert calculated result is useful of you want to append some text to the end of text already in the record (not replace)
March 11, 201213 yr I'm using the insert calculated result to populate a field (global) with many data and then copy it to the clipboard so I can paste it to a word prossesor. I'd prefer not to have the global field shown but, is it compulsory too to have that field in the layout to use the copy command or is there a way to copy directly to the clipboard a calculation? Thank you.
March 11, 201213 yr is there a way to copy directly to the clipboard a calculation? Not natively, though you could use a plugin or - in OS X - AppleScript for this. Anyway, the global does not have to be visible or even enterable.
March 11, 201213 yr With visible you mean, not seen (transparent content and borders) but placed in the layout. If is not in the layout it doesn't make the calc for me. For me it's ok, I don't need anything else. I copy all the data where the insert calculated result has placed it and even I delete it after. Thanks for your advices.
March 17, 201213 yr Use Set Field [ ] instead and see how it goes. :^) Set Field [ ] is always the preferred step. Can Insert Calculated Result do anything that Set Field can't or can we get by without it?
March 17, 201213 yr Primary difference between Insert Calculated Result and Set Field is that the field that you are targeting must be on the current layout The Insert Calculated Result is kind of a holdover from previous versions allowing easier upgrading. HTH Lee
March 17, 201213 yr Primary difference between Insert Calculated Result and Set Field is that the field that you are targeting must be on the current layout The Insert Calculated Result is kind of a holdover from previous versions allowing easier upgrading. HTH Lee Thanks Lee. I actually used Set Field just this week which worked great after previously trying to use Insert Calculated Result. Just shrugged my shoulders and carried on. I now know why it didn't work. ;)
March 17, 201213 yr There are some things which can only be accomplished with Insert Calculated Result[] or at least be accomplished easily. If you check FM Help, it 'replaces only the selected portion of the current field, or inserts the result at the insertion point.' *Replacing only the 'selected' portion of a field can't be done any other way and neither can inserting text at the insertion point. There are a few other reasons which do not come to mind right now. But Set Field[] is the workhorse of scripting. The fields you set do not need to be on the layout and if the field is global, it does not even need to be in a related table - its value can be set (or retrieved) from anywhere. * okay, there are workarounds without using Insert Calculated Result[] but they are convoluted. And why use workarounds when this script step handles them nicely, LOL? Edited March 17, 201213 yr by LaRetta
March 17, 201213 yr There are some things which can only be accomplished with Insert Calculated Result[] or at least be accomplished easily. If you check FM Help, it 'replaces only the selected portion of the current field, or inserts the result at the insertion point.' *Replacing only the 'selected' portion of a field can't be done any other way and neither can inserting text at the insertion point. There are a few other reasons which do not come to mind right now. But Set Field[] is the workhorse of scripting. The fields you set do not need to be on the layout and if the field is global, it does not even need to be in a related table - its value can be set (or retrieved) from anywhere. * okay, there are workarounds without using Insert Calculated Result[] but they are convoluted. And why use workarounds when this script step handles them nicely, LOL? Aha, still a useful script step then. I'll have to check out how to specify which text you want to replace or how to specify an insertion point. Thanks LaRetta :smile:
Create an account or sign in to comment