Jump to content

dleahy

Registered Users - Approved
  • Posts

    51
  • Joined

Everything posted by dleahy

  1. Dan + all, Fixed. I just had some messed up syntax... switch (GetFileName(Field("SelectShoe1"))..... NOT switch (GetFileName("SelectShoe1"))..... Thanks for all your help! -D
  2. I hear ya Dan. I will do that and report back. I appreciate all your help. -D
  3. Dan, This still doesn't seem to be working. It is baffling me because it appears quite logical. The rule just always returns the default value when previewed in Marcom Central. Here's a full explanation for one last hurrah to try to get this to work. A complementary box of Fudgesicles is yours if you can solve this quandary. I will try to be comprehensive in my description... ----------- The template is for a golf shoe client so that they can create marketing boards full of shoes for event exhibitions and tradeshows. They can version boards on the webstore from 2 shoes all the way up to 20. They have a bunch of different styles and shoes. I am using a 30,000 row deep iForms list document to filter the dropdowns so that only the shoes assigned to the style they choose are displayed. They are restricted to only two styles per board. I set up different pages in the PDF FP template like so: 2Shoes1Style 2Shoes2Styles 3Shoes1Style 3Shoes2Styles ...all the way to 20Shoes2Styles An OnRecordStart rule assigns which page to used based on how SelectShoe fields are populated with a value. Here is what it looks like to the user: http://www.dsgraphics.com/test/userview.png Now each shoe has a size value (i.e. A, B, C, Z, etc.) assigned to it and I am trying to use the switch rule to pull that into a variable text frame positioned on the top right hand size of the shoe graphic frame. Circled in red is the text frame with the rule to pull in the letter: http://www.dsgraphics.com/test/templateexample.png So I am not sure I can use the switch rule below because it has to identify the specfic shoe value in the SelectShoe (x) field then return the correct shoe size letter. For the screenshot above, you have SelectShoe1 and SelectShoe2 which each could have a different shoe size letter value depending on what the user picks for a shoe. Here is how it looks in the Marcom Central manager: http://www.dsgraphics.com/test/managerview.png The A duplicate graphic field is used to pull a PDF template page setup if they choose a two style template instead a one style. I had to do it this way because I use a conditional visibility UI rules and they can only be assigned one parent field...but that really isn't the relevant to the problem. The problem is why the switch rule isn't working. I had to use the image library IDs to filter the dropdowns in iForms. Do you think I need to use that as a field value in the switch rule instead of the file name? Here is the current switch rule: for (var n=1; n<=40; n++) { var shoe = "SelectShoe"; if (n<=20) shoe += n; else shoe += (n-20) + 'A'; if (Field(shoe) != '') { var shoeStyle = Field(shoe); n = 40; } } switch (GetFileName(ShoeStyle)) { case "Contour 54002": case "Contour 54094": case "Contour 54111": case "Contour Casual 54275": case "Contour Casual 54363": case "DryJoys 99038": case "DryJoys 99052": case "DryJoys Tour 53581": case "DryJoys Tour 53612": case "DryJoys Tour 53676": case "Icon 52005": case "Icon 52054": case "LoPro 97119": case "LoPro Casual 97065": case "LoPro Casual 97261": case "LoPro Casual 97276": case "SuperLites 98951": case "SuperLites 98803": case "SuperLite 58004": case "Sport Spikeless 53111": case "Sport 53203": case "M Project-Spikeless 55221": case "M Project-Cleated 55255": case "M Project-Cleated 55124": case "M Project 95634": case "M Project 95608": var result = "A"; break; case "Contour 54038": case "Contour Casual 54238": case "Contour Casual 54389": case "Contour Casual 54397": case "GreenJoy 45351": case "GreenJoy 45368": case "GreenJoy 45375": case "GreenJoy 45382": case "DryJoys Tour 53599": case "Icon 52217": case "LoPro 97135": case "LoPro 97166": case "LoPro Casual 97238": case "SuperLites CT 58118": case "SuperLites CT 58123": case "SuperLites 98829": case "SuperLite 58012": case "Sport Spikeless 53147": case "Sport Spikeless 53166": case "Sport 53247": case "LoPro Casual 97292": case "M Project-Cleated 55108": case "M Project-Spikeless 55213": var result = "C"; break; case "GreenJoy 45697": case "GreenJoys 48453": case "GreenJoys 48461": var result = "S"; break; case "Contour 54102": case "Icon 52252": case "Icon 52268": case "Sport 53216": case "M Project-Cleated 55116": case "M Project-Spikeless 55239": var result = "Z"; break; case "Contour 54043": case "Contour 54051": case "Contour Casual 54251": case "Contour Casual 54356": case "Contour Casual 54371": case "DryJoys 99045": case "DryJoys Tour 53719": case "DryJoys Tour 53607": case "GreenJoys 48357": case "GreenJoys 48364": case "Icon 52108": case "Icon 52245": case "Icon 52276": case "LoPro 97123": case "LoPro 97142": case "LoPro 97159": case "SuperLites CT 58135": case "SuperLites 98837": case "SuperLites 98811": case "Sport 53295": case "Sport 53224": case "M Project-Spikeless 55247": case "M Project-Spikeless 55206": case "M Project-Cleated 55132": case "M Project 95615": case "M Project 95622": case "SuperLite 56732": default: var result "B"; } return result; Thanks for all your (and the rest of you fellas) help thus far. I appreciate it immensely! Best, -Dano P.S. Here is a zip file of the template files in case they would be of any help.
  4. Break tags? How would that look? I pretty much used the wizard to make this rule. Thanks for the quick reply!
  5. Hello guys, I am having a little bit of an issue here... My goal is to return a letter of literal text if a specific graphic is chosen in a given field. Seems simple enough right. Right now the switch rule I have isn't working and always returning the default case. Do note that I am using Fusion Pro in connection with Marcom Central. There is a field for every possible shoe (40 total)... switch (Field("SelectShoe1") || (Field("SelectShoe2") || (Field("SelectShoe3") || (Field("SelectShoe4") || (Field("SelectShoe5") || (Field("SelectShoe6") || (Field("SelectShoe7") || (Field("SelectShoe8") || (Field("SelectShoe9") || (Field("SelectShoe10") || (Field("SelectShoe11") || (Field("SelectShoe12") || (Field("SelectShoe13") || (Field("SelectShoe14") || (Field("SelectShoe15") || (Field("SelectShoe16") || (Field("SelectShoe17") || (Field("SelectShoe18") || (Field("SelectShoe19") || (Field("SelectShoe20") || (Field("SelectShoe1A") || (Field("SelectShoe2A") || (Field("SelectShoe3A") || (Field("SelectShoe4A") || (Field("SelectShoe5A") || (Field("SelectShoe6A") || (Field("SelectShoe7A") || (Field("SelectShoe8A") || (Field("SelectShoe9A") || (Field("SelectShoe10A") || (Field("SelectShoe11A") || (Field("SelectShoe12A") || (Field("SelectShoe13A") || (Field("SelectShoe14A") || (Field("SelectShoe15A") || (Field("SelectShoe16A") || (Field("SelectShoe17A") || (Field("SelectShoe18A") || (Field("SelectShoe19A") || (Field("SelectShoe20A"))))))))))))))))))))))))))))))))))))))))) { case "Contour 54002": return "A"; case "Contour 54038": return "C"; case "Contour 54043": return "B" case "Contour 54051": return "B"; case "Contour 54094": return "A"; case "Contour 54102": return "Z"; case "Contour 54111": return "A"; case "Contour Casual 54238": return "C"; case "Contour Casual 54251": return "B"; case "Contour Casual 54275": return "A"; case "Contour Casual 54356": return "B"; case "Contour Casual 54363": return "A"; case "Contour Casual 54371": return "B"; case "Contour Casual 54389": return "C"; case "Contour Casual 54397": return "C"; case "DryJoys 99038": return "A"; case "DryJoys 99045": return "B"; case "DryJoys 99052": return "A"; case "DryJoys Tour 53581": return "A"; case "DryJoys Tour 53599": return "C"; case "DryJoys Tour 53607": return "B"; case "DryJoys Tour 53612": return "A"; case "DryJoys Tour 53676": return "A"; case "DryJoys Tour 53719": return "B"; case "GreenJoy 45351": return "C"; case "GreenJoy 45368": return "C"; case "GreenJoy 45375": return "C"; case "GreenJoy 45382": return "C"; case "GreenJoy 45697": return "S"; case "GreenJoys 48357": return "B"; case "GreenJoys 48364": return "B"; case "GreenJoys 48453": return "S"; case "GreenJoys 48461": return "S"; case "Icon 52005": return "A"; case "Icon 52054": return "A"; case "Icon 52108": return "B"; case "Icon 52217": return "C"; case "Icon 52245": return "B"; case "Icon 52252": return "Z"; case "Icon 52268": return "Z"; case "Icon 52276": return "B"; case "LoPro 97119": return "A"; case "LoPro 97123": return "B"; case "LoPro 97135": return "C"; case "LoPro 97142": return "B"; case "LoPro 97159": return "B"; case "LoPro 97166": return "C"; case "LoPro Casual 97065": return "A"; case "LoPro Casual 97238": return "C"; case "LoPro Casual 97261": return "A"; case "LoPro Casual 97276": return "A"; case "LoPro Casual 97292": return "C"; case "M Project 95608": return "A"; case "M Project 95615": return "B"; case "M Project 95622": return "B"; case "M Project 95634": return "A"; case "M Project-Cleated 55108": return "C"; case "M Project-Cleated 55116": return "Z"; case "M Project-Cleated 55124": return "A"; case "M Project-Cleated 55132": return "B"; case "M Project-Cleated 55255": return "A"; case "M Project-Spikeless 55206": return "B"; case "M Project-Spikeless 55213": return "C"; case "M Project-Spikeless 55221": return "A"; case "M Project-Spikeless 55239": return "Z"; case "M Project-Spikeless 55247": return "B"; case "Sport 53203": return "A"; case "Sport 53216": return "Z"; case "Sport 53224": return "B"; case "Sport 53247": return "C"; case "Sport 53295": return "B"; case "Sport Spikeless 53111": return "A"; case "Sport Spikeless 53147": return "C"; case "Sport Spikeless 53166": return "C"; case "SuperLite 56732": return "B"; case "SuperLite 58004": return "A"; case "SuperLite 58012": return "C"; case "SuperLites 98803": return "A"; case "SuperLites 98811": return "B"; case "SuperLites 98829": return "C"; case "SuperLites 98837": return "B"; case "SuperLites 98951": return "A"; case "SuperLites CT 58118": return "C"; case "SuperLites CT 58123": return "C"; case "SuperLites CT 58135": return "B"; default: return "B"; } Any idea why this isn't working? All the images are named on Marcom Central just like the case value in the aforementioned rule.
  6. Revisiting tables after a long absence is killer....need some help I need a very simple table and hope somebody could shoot me some code... 2 Columns - 3 Rows Field (PhoneLabel1) Field (Phone1) Field (PhoneLabel2) Field (Phone2) Field (PhoneLabel3) Field (Phone3) I need no margins so the line spacing is even. This is for a business card so its small. Any help out there in forumland? Best, -Dan
  7. You could go the iForms route but you'd need to have the feature enabled by PTI. Look into "dynamic pricing" in the following tutorial document from PTI: http://files.pti.com/MCC_Docs/iFormsTutorial.pdf Best, -Dan
  8. Eric, I was replying to the originally poster with a screenshot. I am a screenshot feign! Cheers, -Dan
  9. Susan, You could create kits containing different products and varying quantity levels. Then you could set a Misc. Fee for each price level of each specific kit. I do not believe you can set misc. fees based on a given order total. Best, -Dan P.S. An edible bookmark? Yummy!
  10. Sounds to be like the font may not be embedding properly. Check your fonts.err file here for any issues with the barcode fonts: /Library/Preferences/PTI/FusionPro/fonts.err
  11. Hmmm...you could do this by creating two unique products... Create a new folder with the following two products: Product A: Replenishment Order -set valid drop down pricing in sets of what you want the customer to be able to reorder (i.e. 250/500/750/1000) -this product will always reside in the folder for the customer to restock Product B below. Product B: Regularly Ordered Product -set pricing to 0 (or only pick fees if applicable) -set this order to "Disable Backordering" so when the quantity reaches -0-, the only product left in the folder would be Product A. As you may know, PICK products automatically deactivate with this setting enabled. That way, you'll just have to watch for Product A replenishment orders and know you'll have to reactivate product B when the new inventory is received from the OSV. -Dan
  12. Yo 6, Currently, I do not believe back ordering is available for kits. Contact PTI support just to be sure. As far as I understand it, the kit quantity available on the store is equal to the PICK product component with the lowest on hand quantity. It doesn't seem to recognize individual PICK product backorder settings. A workaround might be to create a folder in the Catalog Editor housing all the products in the kit and have users order them individually rather than just as a PTI kit. Enable the user group feature "Remain on Add to Cart" so the user doesn't get directed to the shopping cart each time they add the desired amount of products to cart. They will stay on page. http://s7.postimage.org/x9wfuv3tn/Screen_shot_2013_01_30_at_8_19_38_AM.jpg All the best, -Dan
  13. Here is a screenshot.... http://oi46.tinypic.com/2w50vt3.jpg
  14. Considering its for an "internal purpose", I'd consider changing the font family. Maybe Arial or Times. See if that helps.
  15. There could be a system variable that PTI could give you to use in the slug to pull in that information. I'd contact support directly.
  16. As far as I know, the functionality you are looking for isn't currently supported in Marcom Central. Text profile attributes are inherent to the user who is logged in only...not a group or team. Possible workarounds: • You could have your CPM set you up with a Buyer Admin login which you could use for the team leader. The Buyer Admin is a unique user type who has access to view/edit/create groups and locations of all users associated with the account. He would then be able to log in and view the contact information for the other employees and input the information into the appropriate versioned fields. Not ideal but could work... • Contact PTI and make a feature request. Good luck! -Dan
  17. You should try using the bullet feature built into most font faces... On the Mac, press (option + 8) to create this: • • %%VersionedText%% • %%VersionedText%% • %%VersionedText%% • %%VersionedText%% • %%VersionedText%% Good luck, -Dan
  18. Ya, hopefully this gets worked in for a future release...
  19. Just looking at this rule again, I can't figure out how the rule could verify that it needs to return the variable resource or not. Hmmm.....pondering...
  20. Hello all, Having a problem with a quite complex disclaimer rule I have to write. Here is the logic I am trying to achieve and the problem I am facing: A customer chooses from a 3 topics from a dropdown library list of 20 topics in three different drop downs. Dropdown A -Topic 1 -Topic 2 -Topic 3... Dropdown B -Topic 1 -Topic 2 -Topic 3... Dropdown C -Topic 1 -Topic 2 -Topic 3... When a topic is selected, it is assigned a disclaimer. The disclaimer is setup as a formatted text resource. In this disclaimer there are embedded rules along with static content that link to other formatted text resources that contain variable parts of the disclaimer. Every different topic could have a different variable line. Say Topic E could have variable line A and G whereas Topic B could have variable line A, E, G, and X. The hard part in writing this rule is the fact that is has to allow for the line of variable text to not appear more than once even though they can select topics that might be assigned to the same variable line. So lets say the user did this scenario: Filled out all three dropdowns with the following: Dropdown 1: Topic E = Variable lines A &G Dropdown 2: Topic J = Variable lines A & F Dropdown 3: Topic X = Variable lines A & B & F & S I only want Variable line A and F to appear once even though they are selected 3 times and 2 times respectively. Here is the code I thought would work: My thought process is that I could write a rule for each variable disclaimer copy line and topic... This code is factoring in that I already went though and picked out all the topics that use a respective variable line of disclaimer copy. Like this example... Variable Disclaimer Copy 1 is used in the following titles: • Protecting Purchasing Power (CE) • Global & Financial Market Outlook • Globalize Your Thinking (CE) • Beyond Bonds - Income Alternatives with Growth Potential • High Conviction Investing: The Benefits of Active Management • Senior Floating Rate and High Yield Bonds Can Potentially Help Your Investors • Investing in an Uncertain World • Globalization: A New Era for Defined Contribution Plans which is why I'll have to write a rule similar to this eight times. Each unique topic will check the other ones to insure they do not equal a topic that already includes that variable line. then it will return nothing until it finds the one the user entered... if ((Field("SelectInviteTopicOne") == "Protecting Purchasing Power (CE)") || (Field("SelectInviteTopicTwo") == "Protecting Purchasing Power (CE)") || (Field("SelectInviteTopicThree") == "Protecting Purchasing Power (CE)")) return Resource("Variable Disclaimer Copy 1"); else if (Field("SelectInviteTopicOne") != "Global & Financial Market Outlook") return "" else if (Field("SelectInviteTopicTwo") != "Global & Financial Market Outlook") return "" else if (Field("SelectInviteTopicThree") != "Global & Financial Market Outlook") return "" else if (Field("SelectInviteTopicOne") != "Globalize Your Thinking (CE)") return "" else if (Field("SelectInviteTopicTwo") != "Globalize Your Thinking (CE)") return "" else if (Field("SelectInviteTopicThree") != "Globalize Your Thinking (CE)") return "" else if (Field("SelectInviteTopicOne") != "Beyond Bonds - Income Alternatives with Growth Potential") return "" else if (Field("SelectInviteTopicTwo") != "Beyond Bonds - Income Alternatives with Growth Potential") return "" else if (Field("SelectInviteTopicThree") != "Beyond Bonds - Income Alternatives with Growth Potential") return "" else if (Field("SelectInviteTopicOne") != "High Conviction Investing: The Benefits of Active Management") return "" else if (Field("SelectInviteTopicTwo") != "High Conviction Investing: The Benefits of Active Management") return "" else if (Field("SelectInviteTopicThree") != "High Conviction Investing: The Benefits of Active Management") return "" else if (Field("SelectInviteTopicOne") != "Senior Floating Rate and High Yield Bonds Can Potentially Help Your Investors") return "" else if (Field("SelectInviteTopicTwo") != "Senior Floating Rate and High Yield Bonds Can Potentially Help Your Investors") return "" else if (Field("SelectInviteTopicThree") != "Senior Floating Rate and High Yield Bonds Can Potentially Help Your Investors") return "" else if (Field("SelectInviteTopicOne") != "Investing in an Uncertain World") return "" else if (Field("SelectInviteTopicTwo") != "Investing in an Uncertain World") return "" else if (Field("SelectInviteTopicThree") != "Investing in an Uncertain World") return "" else if (Field("SelectInviteTopicOne") != "Globalization: A New Era for Defined Contribution Plans") return "" else if (Field("SelectInviteTopicTwo") != "Globalization: A New Era for Defined Contribution Plans") return "" else if (Field("SelectInviteTopicThree") != "Globalization: A New Era for Defined Contribution Plans") return ""; I appreciate any help anyone could forward me. I am taking a javascript class in a couple weeks that I hope will prove useful in working with these types of issues. I really don't know how to approach this complex a statement. Best, -Dan
  21. Ya that worked perfect! Thanks! Never thought of writing the code that way. Yes, usually I use UI rules to prevent them from selecting just the third but not the first two...
  22. Yes. In Marcom Central a user has the ability to select a bunch of different values in 3 unique dropdowns. If they select a value in just the first dropdown and leave the next two blank then it should use the page "Body1" as the template. If they select a value in the first and second dropdowns but not the third, then it should use the page "Body2" as the template. If they select a value in all three dropdowns then it should use the page "Body3" as the template. Make sense? Logically it seems my code should work but it isn't.
  23. This isn't working. Keeps giving me only the first page. I wonder if it is the "else ifs"...
  24. Dan, What if you have multiple fields to verify. This logic doesn't seem to work: if (Field("SelectTopicCATone") != "") { FusionPro.Composition.SetBodyPageUsage("Body1", true); } else if (Field("SelectTopicCATtwo") != "") { FusionPro.Composition.SetBodyPageUsage("Body2", true) && FusionPro.Composition.SetBodyPageUsage("Body1", false); } else if (Field("SelectTopicCATthree") != "") { FusionPro.Composition.SetBodyPageUsage("Body3", true) && FusionPro.Composition.SetBodyPageUsage("Body2", false) && FusionPro.Composition.SetBodyPageUsage("Body1", false); }
×
×
  • Create New...