Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 01/22/2020 in Posts

  1. 1 point
    Many thanks for this kpcollier, really useful info.
  2. 1 point
    Hi @Leon13, You may remove the open and close symbol "<>" and insert "&nbsp;" instead.
  3. 1 point
    I just got back to this and started looking everything over - particularly where this "function displ()" was coming from. In my footer on the datapage I had long ago commented out some old javascript code which was either used for testing or something. After needing to re-embed the datapage due to the old embed code no longer functioning, this commented out javascript is what started to cause the issue. I removed this javascript and everything works fine now. Thank you for pointing me in the right direction by asking me to check the code for errors in the Chrome debugger - that is what found the culprit:) Ron
  4. 1 point
    Hastur

    Expand both options

    @Leon13 I think that the best approach is to let your users to either expand all the groups or use the default option. To make it works, you need to add this code to the Footer of the Result set: <script type="text/javascript"> function customClick() { var elems = document.getElementsByClassName('cbResultSetShowHideGroupText'); for(let i = 0; i < elems.length; i++) { if(elems[i].children[0].alt === "expand icon") { elems[i].click(); } } } function assignEvent() { document.getElementById('expandAll').addEventListener('click', customClick); document.removeEventListener('DataPageReady', assignEvent); } document.addEventListener('DataPageReady', assignEvent); </script> And this code to the Header of the result set: <button id="expandAll">Expand All</button> Please note that you need to disable the HTML editor of the Header/Footer. You can make this in the Advanced section.
  5. 1 point
    Can you provide a wire-frame of the flow that way we can see what's supposed to happen. Like: Product = GARMENT X Serial Number = 123456 Emp Id = TestID-00001 Station = Choices (Station A, Station B, etc) Then create the wire-frame for us to look at ... like this example below, except show your form fields w/names and what should happen with it's use (It will help us to figure out the flow/logic.)
  6. 1 point
    My first thought is you CSS in causing errors. The form CSS may be the issue .. but it's hard to determine without seeing the form live. Some things to try on the code you provided are as follows: <style> .ui-resizable-helper { border: 1px dotted gray; } ul#menu .activeMenu { background: #bb3033; } ul#menu { width: 100%; background: #21618C; font-size: 10px; font-family: "Arial", sans-serif; font-weight: bold; list-style-type: none; margin: 0; padding: 0; text-align: center; } ul#menu li { display: block; display: inline-block; margin: 4px 0 0 0; padding: 5px 15px 5px 15px; cursor:pointer;} ul#menu li a {color: #fff; text-decoration: none; display: block; line-height: 200%; } ul#menu li a:hover { color: #333; } /* FIX(1) move li styles here */ li { font-size: 11px !important; font-weight: bold !important; } /* FIX(2) get rid of padding, border, make width 100%, get rid of display block and position too, make background grey for testing only */ .content{width: 100%; height:1024px; background: #e5e5e5; padding: 0px; border:0px solid #21618C; overflow:hidden;} /* FIX(3) get rid of padding, make width 50% (iFrame width), make background blue (iFrame background color) for testing only */ .ChannelView{ width:50%; height:100%; margin-bottom:100%; background:#aae2ee;} /* FIX(4) disable this media query as it does nothing for this page @media (max-width: 1024) { .content { width: 96.6%; background: #ff0000 !important; } } */ </style> Let see what this style code change does, then go from there.
  7. 1 point
    This is an expected result when your tables are shared with other app. Objects that are shared with your other apps will not be deleted when you delete an entire app.
  8. 1 point
    AtayBalunbalunan

    Trigger and Zapier

    Yes, records inserted via Zapier will execute trigger.
  9. 1 point
    You will definitely want someone that is proficient in JavaScript. That is a BIG one with Caspio. There are a lot of things that Caspio is missing in their 'standard' features, and they all seem to be do-able in JS. HTML and CSS is pretty much a given. If they are good at JS, they'll know how to mess with these. Python might be a nice asset for APIs, but again, someone good can do it with JS. Knowledge of some SQL will definitely help with expressions and queries for Calculated Values and Formulas, etc. But that stuff is easier and Live Chat can help with this a lot more than they can with JS. TLDR; You won't need as much of a 'Database Manager', but more of a 'JavaScript Expert'. A hard part is going to be getting an experienced developer wanting to actually work with Caspio. It is a great platform for people who are starting out and don't know much about programming, but for an expert, it could really be troublesome getting them onboard to work with something like this.
  10. 1 point
    Hi @roattw, If you select a field in the table, Custom option will not be available. It is present in Totals and Aggregation if you click on the plus button. Also, picker button is not available in Pivot Table.
  11. 1 point
    Hi @roattw, Actually, you can use Pivot table to achieve your desired Report. You can use Totals and Aggregation under values and add custom formula. This will be the result Cheers! -LittleMsGinger
  12. 1 point
    Thank you @kpcollier !! :) Worked like a charm. Greatly appreciate your help!
  13. 1 point
    I believe this is what you need: <script type="text/javascript"> document.addEventListener('BeforeFormSubmit', function(event) { location.reload(); }); </script>
  14. 1 point
    Hi @kpcollier, Try the following JavaScript: <script type="text/javascript"> function formatAsDollars(el) { el.value = el.value.replace(/[^\d]/g,'').replace(/(\d\d?)$/,'$1').replace(/^0+/,'').replace( /\d{1,3}(?=(\d{3})+(?!\d))/g , "$&,"); el.value = el.value ? '$' + el.value : ''; } var fields = ["Subtotal", "MarkUp", "County_Tax", "Misc_Percent", "Freight_Total"]; //specify your fields here fields.forEach(element => { element = "InsertRecord" + element; // replace "InsertRecord" with "EditRecord" for Details/Single Record Update DP document.getElementById(element).onkeyup = function() { formatAsDollars(this); } document.getElementById(element).onchange= function() { formatAsDollars(this); } }); function calculate() { var subTotal = document.getElementById("InsertRecordSubtotal").value.length == 0 ? 0 : (parseFloat(document.getElementById("InsertRecordSubtotal").value.replace(/[$,]+/g,""))); var markUp = document.getElementById("InsertRecordMarkUp").value.length == 0 ? 0 : (parseFloat(document.getElementById("InsertRecordMarkUp").value.replace(/[$,]+/g,""))); var countyTax = document.getElementById("InsertRecordCounty_Tax").value.length == 0 ? 0 : (parseFloat(document.getElementById("InsertRecordCounty_Tax").value.replace(/[$,]+/g,""))); var miscPerc = document.getElementById("InsertRecordMisc_Percent").value.length == 0 ? 0 : (parseFloat(document.getElementById("InsertRecordMisc_Percent").value.replace(/[$,]+/g,""))); var freight = document.getElementById("InsertRecordFreight_Total").value.length == 0 ? 0 : (parseFloat(document.getElementById("InsertRecordFreight_Total").value.replace(/[$,]+/g,""))); var markUpTotal = document.getElementById("InsertRecordMarkUp_Total").value = (subTotal) * (markUp); var countyTaxTotal = document.getElementById("InsertRecordCountyTax_Total").value = (subTotal) * (countyTax); var miscPercTotal = document.getElementById("InsertRecordMisc_Percent_Total").value = (subTotal) * (miscPerc); var total = document.getElementById("cbParamVirtual1").value = (subTotal) + (markUpTotal) + (countyTaxTotal) + (miscPercTotal) + (freight); var dp_el = [ document.getElementById("InsertRecordMarkUp_Total"), document.getElementById("InsertRecordCountyTax_Total"), document.getElementById("InsertRecordMisc_Percent_Total"), document.getElementById("cbParamVirtual1") ]; dp_el.forEach(element => formatAsDollars(element)); } setInterval(calculate, 1500); </script> Regards, vitalikssssss
  15. 1 point
    Hi @norkaman Do you use the following syntax to reference first 2 parameters? [@WID] and [@LBE]? Regards, vitalikssssss
  16. 1 point
    Hi @Yusuf, I suggest that you review this forum post: I tried this solution on my end and it works!
  17. 1 point
    LittleMsGinger

    Reminder email trigger - stuck

    Hi @roattw, You can use #inserted in the Select From block instead of the Table (Patients_Encounters_Pre121219). If you use the Table itself, every time the Triggered Action runs, it will send an email to all records where Pending_Info is equal to "Y". You can refer to this video for more information: https://www.caspio.com/webinars/send-sms-emails-using-triggered-actions/ Happy Holidays! -kristina
  18. 1 point
    Please ensure that you don't have referential integrity enabled in you table relationship. According to the note in https://howto.caspio.com/tables-and-views/triggered-actions/:
  19. 1 point
    Ha! I got this working. I missed the step of having to name the ID for the No Results Message in Localizations. If someone else needs to change the header message when no results are found, this is how. I found some clues using this online help page, https://howto.caspio.com/integration/map-mashup/hiding-the-map-when-no-results-are-found/ Go to Localizations and choose the language you're using, and go to #351 No Records Found. Add a custom message if there isn't already one, and put a div tag around it with an ID, mine is "norecord" for this example. Then add another div tag around the header content you want to change and also give it an ID, ID="HOW" for this example. Then add this code to the footer of your Configure Results Page Fields: Match whatever names you give the respective fields to the IDs in the code below. <script type="text/javascript"> if (document.getElementById("norecord")) { document.getElementById("HOW").innerHTML = "THE NEW CONTENT YOU WANT DISPLAYED WHEN THERE ARE NO RECORDS"; } </script> This new content will overwrite whatever content is in the <div> named HOW when the search returns no results. If you're adding HTML to the new content, you need to escape all your quotes or it won't work. I made that mistake. In a link example, it would be: <a href=\"http://mywebsite.com\">Visit my website!</a>
  20. 1 point
    BaySunshine

    Select Distinct Records

    Hi @bbeshlian, The solution for this issue is to use a table which has ID field marked as unique field in the table. Use this field as the data source of your report DataPage. To show the rest of the fields in the report, use calculated fields with SQL queries to query the view based on the same ID value. Be sure to include a Where condition which will help only pull a certain record for the respective ID value. When using a view in the calculated field, add '_v_' to the name of the table like shown below: select field_name1 from _v_viewname where field_name2='..........' I hope that helps. Regards,
×
×
  • Create New...