Jump to content


Caspio Rockstar
  • Content Count

  • Joined

  • Last visited

  • Days Won


Vitalikssssss last won the day on May 13

Vitalikssssss had the most liked content!


About Vitalikssssss

  • Rank
    Advanced Member

Recent Profile Visitors

1,414 profile views
  1. Hi @lonyango, I was working on a similar type of design recently. I have a Tabular report Datapage with a field q-ty which can be incremented/decremented with custom buttons without inline "Edit". Here are the steps for building this behavior: 1. Create a Details Page with the field which you would like to edit. - Datapage should be filtered by predefined criteria by external parameter e.g. some ID field; - Add the following CSS code in the Header of the Datapage in order to hide default elements of Details page (tested on the default "Caspio" style); <style> .cbBackButtonContainer{ display:none !important; } .cbFormTable{ border-style:none !important; } .cbFormFieldCell{ padding:7px 0px 7px 0px; } .cbBackButton{ min-width: 15px; } .cbBackButton:hover{ min-width: 15px; } .cbResultSetTable { width: auto; } #EditRecordPrice_Per_Unit{ text-align: center; } </style> - Add HTML block and place the following code in it: <input class="cbBackButton" id="increment" onclick="change_value('increment')" type="button" value="+" /> in Advanced settings check the box "Continue next element on the same line". - Assign "TextField" form element to the field which you would like to edit; in Advanced settings: select "No Label" option and check the box "Continue next element on the same line". - Add a second HTML block and place the following code in it: <input class="cbBackButton" id="decrement" onclick="change_value('decrement')" type="button" value="-" /> - Add the following JS code into Datapage footer: <script> let form = document.querySelector("#caspioform"); let el = document.querySelector("#EditRecordYOURFIELDNAME"); // Replace YOURFIELDNAME with your actual field // below code checks user input from a keyboard and submits the form document.addEventListener('DataPageReady', (event) => { el.addEventListener('keydown', (v_e) =>{ var charCode = (v_e.which) ? v_e.which : v_e.keyCode; if (charCode > 31 && (charCode < 48 || charCode > 57)) { v_e.preventDefault(); } return true; }); el.addEventListener('focusout', (v_e) => { setTimeout('form.submit()',3000); }); }); //this function increment and decrement the value after user clicks +/- function change_value(x) { if (x==='increment' && el.value) { el.value=parseInt(el.value)+1; setTimeout('form.submit()',3000); } else if (x==='decrement' && el.value && parseInt(el.value) !=0) { el.value=parseInt(el.value)-1; setTimeout('form.submit()',3000); } // assign zero if field is empty else { el.value=0; } } </script> - Uncheck all Details Page Options in the next screen of Datapage wizard; - in Destination after record update select "Same Form" 2. in the Result set of Report Datapage add an HTML block and embed the Details page as an Iframe e.g. <iframe frameborder="0" name="xxxx" src="https://xxxxx.caspio.com/dp/xxc4000ab7b2be9602d4fd4b03b?ID=[@field:ID]" style="width:100%;" title="xxxxxx">Sorry, but your browser does not support frames.</iframe> The only drawbacks I have seen so far is the loading speed which can be up to 5s and Data transfer usage is going to increase. Hope it would be useful. Regards, vitalikssssss
  2. Hi @kpcollier, What type of Join are you using in the View? I can suggest adding a field with a default value "0" to Orders_Table and field with a default value "1" to Completed_Table. You should use newly added fields in Join settings of the View and also select ALL records from both tables. Hope this helps. Regards, vitaliksssss
  3. Hi @kpcollier, I believe you can switch the comparison operator for "Tech_Status" to "Not Equal". Hope this helps. Regards, vitalikssssss
  4. Hi @ShadowSovereign, I heard that Integromat platform also has a Caspio app available for integration with 3rd party tools. Regards, Vitalikssssss
  5. Hi @jimarch, You can utilize Cascading radio buttons and lookup table which would output all possible combination of ranks. Users will be forced to submit their "rank" choices for each location in sequential order. Your first location will have radio-buttons "1-4 " and each next location will have a set of radio - buttons without the one selected on the previous step. You may upload the following app sample and test above - mentioned workflow in the Data page I have created: App Regards, vitalikssssss
  6. Hi @PlaceWorks, It would help a lot if could share a screenshot of a table relationship between tables. Also, please let me know if you have cascade update and/or delete enabled in relationship settings. Regards, vitalikssssss
  7. Hi @kpcollier, You can check the status before the update to make sure it is not equal to the list of previous statuses. Here is an example for one of the Trigger blocks: Hope this helps. Regards, vitalikssssss
  8. Hi @DaveC2019, I think the calculated value form element might be the right feature to implement the described workflow. You can find more about this element in the following article: https://howto.caspio.com/datapages/datapage-components/calculated-values/ Hope this helps. Regards, vitalikssssss
  9. Hello @valentid, I have an application in which I have solved a similar case. The purpose of this app is to track booking request. I have deployed a simplified version of this app at the following site: https://sites.google.com/view/caspio-booking-app/home This app requires 2 Datapages, 4 Tables, 1 Triggered action. Datapage: Submission Form - to insert booking request. Calendar Datapage - to show all request made for different users. Tables: Users_tbl - holds information about users; Booking_request_tbl - holds information about booking requests; Booking_days_tbl - holds information about each day booking was made. Booking_Period_Lu - lookup table used in Triggered action. Triggered action - used to insert booking period data to Booking_days_tbl as a separate date. Hope this helps. Regards, vitalikssssss
  10. Hi @LynnR , Your query from the first post looks correct. Try to play around with Localization settings on the field level. Regards, vitalikssssss
  11. Hi @LynnR, I would assume that your calculated field has currency formatting applied. Make sure that your calculated field formatting set to "None" in order to remove currency sign. Hope this helps. Regards, vitalikssssss
  12. @abitaquest it is better to open a ticket to Caspio Support since this behavior looks very odd.
  13. Hi @abitaquest, I know that file size limit for scheduled task and manual export is different. The scheduled task export/import: file should be 50 Mb or less. Manual export: file should be 1Gb or less. Make sure that your table fits the size limit. Hope this helps. Regards, vitalikssssss
  14. Hi there, I would appreciate if someone could help me modifying styles of a dropdown on inline insert functionality of Tabular Report Datapage. I have a Cascading dropdown "EMAIL" where I would like to assign a special font and add a bottom border for each option. The challenge I am facing is that I have other dropdowns on this Datapage and I would like them to preserve default styling. Thanks, vitalikssssss
  15. Hi @heinepeople , You may try to add STUFF statement as described in this topic . STUFF( (SELECT ' | ' + CAST (CommonName AS nvarchar) FROM tblPlantCommonName WHERE CPCNum = target.[@field:CPCNumer] FOR XML PATH ('')) , 1, 2, '') Hope this helps. Regards, vitalikssssss
  • Create New...