Jump to content

WatashiwaJin

Caspio Guru
  • Posts

    127
  • Joined

  • Last visited

  • Days Won

    6

Everything posted by WatashiwaJin

  1. Hi @FinTheHuman, I have found a workaround to accomplish this without using JavaScript. But in this process, you need to disable the "AJAX Loading" of the DataPage. On this workaround, we will call the CSS inside the formula in order for us to do the conditioning. You can try the following steps : Step 1: Add a Virtual field in the search form that will identify the column(s) to hide. (Recomend: Dropdown) Like this: Note: (I use (1, 2, 3, etc.) as value to simplify the conditioning in the next steps ) Step 2: In the Advance option, pass the parameter of the virtual field "on-exit" Step 3: Add a calculated field in the Results page and use this formula: CASE WHEN '[@Hide]' = '1' THEN "<style> #target table:nth-of-type(1) td:nth-of-type(1) {display: none;} #target table:nth-of-type(1) th:nth-of-type(1) {display: none;} #target table:nth-of-type(1) td:nth-of-type(2) {display: none;} #target table:nth-of-type(1) th:nth-of-type(2) {display: none;} #target table:nth-of-type(1) td:nth-of-type(3) {display: none;} #target table:nth-of-type(1) th:nth-of-type(3) {display: none;} </style>" WHEN '[@Hide]' = '2' THEN "<style> #target table:nth-of-type(1) td:nth-of-type(1) {display: none;} #target table:nth-of-type(1) th:nth-of-type(1) {display: none;} #target table:nth-of-type(1) td:nth-of-type(4) {display: none;} #target table:nth-of-type(1) th:nth-of-type(4) {display: none;} #target table:nth-of-type(1) td:nth-of-type(5) {display: none;} #target table:nth-of-type(1) th:nth-of-type(5) {display: none;} </style>" WHEN '[@Hide]' = '3' THEN "<style> #target table:nth-of-type(1) td:nth-of-type(1) {display: none;} #target table:nth-of-type(1) th:nth-of-type(1) {display: none;} #target table:nth-of-type(1) td:nth-of-type(6) {display: none;} #target table:nth-of-type(1) th:nth-of-type(6) {display: none;} #target table:nth-of-type(1) td:nth-of-type(7) {display: none;} #target table:nth-of-type(1) th:nth-of-type(7) {display: none;} </style>" ELSE "<style> #target table:nth-of-type(1) td:nth-of-type(1) {display: none;} #target table:nth-of-type(1) th:nth-of-type(1) {display: none;} </style>" END Important note in this formula: - The "nth-of-type(1)" part of the code is the placed number of the column. You may change it depending where your column is placed. - When using a parameter in the formula, make sure to add a single qoute inbetween the parameter. Like this: ('[@Hide]') - In the formula, I always use/call the first column for me to hide the calculated field in the report: Step 4: Add a Header& Footer and put this code : In Header: <div id="target"> In Footer: </div> Step 5: Lastly, Add/call the calculated field in the Header: You can test the functionality here: https://c1abv183.caspio.com/dp/482760005190fa207cb14f088ff5 I also, uploaded the DataPage and Dependencies for you to have a reference. I hope this helps! CaspioData_2021-Jan-28_1134.zip
  2. Hi @FinTheHuman, You may try checking this article for hiding a column in the tabular DataPage. As for the hiding it conditionally, it needs use a JavaScript code to accomplish. But let me check if there is a workaround for this
  3. Hello @ServiceBreez, Sorry for the delay, please check the steps below regarding to the 3rd suggestion: Important Field(s) to accomplish this: ID (Autonumber) GroupField (Text255) The idea here is to display the Group field in every first occurance of the group in the report, using a Calculated field and HTML. Step 1: Create a table containing the mentioned fields Step 2: Create a List DataPage and use the table. Step 3: Add a HTML Block, that will display the GroupField Like this: <h3 style="background: rgb(238, 238, 238); border: 1px solid rgb(204, 204, 204); padding: 5px 10px;"><span style="color:#FF0000;">[@field:GroupField]</span></h3> Step 4: Add a "Calculated Field" that will SELECT the minimum/first record occurance in every Group and use a CASE statement that will hide the "Grouping Label" is condition not met. Like this: CASE WHEN ( (SELECT MIN(ID) FROM TableName WHERE GroupField=target.[@field:GroupField]) = [@field:ID]) THEN '' ELSE 'none !important' END Step 5: add a Style function and use the calculated field value to hide the Grouping label in the other record that doesn't met the condition: <h3 style="background: rgb(238, 238, 238); border: 1px solid rgb(204, 204, 204); padding: 5px 10px; display: [@calcfield:1];"><span style="color:#FF0000;">[@field:GroupField]</span></h3> Notice the "display: [@calcfield:1];" in the code. Step 6: Hide the Calculated field in the report using this code: Refer to this link: https://howto.caspio.com/tech-tips-and-articles/common-customizations/how-to-hide-fields-in-datapages/ <table style="display:none;"><tr><td> </td></tr></table> Make sure that you enclose the calculated field with the HTML Block wit hthe code: Step 7: Use the ID as the Default sort order field: You may test it out here: https://c1abv183.caspio.com/dp/482760000760c781fb574c3e98c2 I have also attached the DataPage and Dependencies for you reference. I hope this helps CaspioData_2021-Jan-26_1036.zip
  4. Hi @sbrown106 - You can also check this techtips tutorial about creating a different navigational menu: https://howto.caspio.com/tech-tips-and-articles/advanced-customizations/create-tabbed-navigation-for-multiple-datapages/ https://howto.caspio.com/tech-tips-and-articles/advanced-customizations/tech-tip-creating-a-floating-navigation-menu/ I hope this helps
  5. Thank you @ServiceBreez What I suggesting in the second part is "Multiple DataPage on a WebPage" (This is not recommended because it will cause you a lot of DataPage depending on your Group(s)) but if you want to do this, you need to do a seperate search and report DataPage (https://howto.caspio.com/tech-tips-and-articles/tech-parameters/how-to-separate-search-page-and-results-page-into-two-different-webpages/) and alter the system message "No Records found" so when you search for a specific group, that message won't appear in the other DataPage. Check here on how to change it: https://forums.caspio.com/topic/6769-no-records-found-message/ As for the 3rd suggestion, I was thinking that this is also possible with the use of calculated fields + HTML combination without using JavaScript. Let me try that and get back to you
  6. Hi @ServiceBreez, As I know there is no Grouping feature in the "List DataPage" in a standard way. Here's what I think you can do: Sort the records by the field you want instead, for them to be ordered: Create a multiple List DataPage that is filtered base on your Groupfield (not recommended) Or you can do a custom code(JavaScript) that display the HTML Block below in every first occurrence per/base on GroupField. (If you do this, make sure that the record is sorted as well) I hope the suggestions helps.
  7. Hello @FinTheHuman, Yes, this is possible. You may try this JavaScript code that will get your record's geolocation and PIN it to the Google Map itself. <p><div id="Location"></div></p> <script type="text/javascript" src="https://code.jquery.com/jquery-latest.min.js"></script> <script type="text/javascript"> $("#Location").html('<a href=" '+ 'https://www.google.com.ph/maps/dir/' + '[@field:Latitude],[@field:Longitude]/' + ' " > Get the Coordinate in Google Map </a>'); </script> You can test it out here: https://c1abv183.caspio.com/dp/48276000a06f576279544ea0bc7d I hope this helps!
  8. Hi @ServiceBreez, The workaround to use a Text(6400)/Text area field in the Group By on the Tabular Report DataPage is to add a Formula field in your table and convert the Text(6400) field like this: CONVERT (VARCHAR(255), [@field:6400]) And then use that newly added Formula field to Group By your Tabular report. -------- As for the SQL, you can only use the Group By function if you are using SELECT with aggregation. Like this: (SELECT COUNT(ID) FROM TABLENAME GROUP BY DATE) I hope this helps!
  9. Hi @zlii0133 - Just to add in the instruction above, as I know you also need to enable this 2 API option and the billing of the API key: You may also check the attached step-by-step instruction of creating the map mashup. I hope this helps Map Mashup presentation.pdf
  10. Hello @VincenzoCocciolo - Based on what I experinced, you need to call the actual field in the DataSource that you use in the DataPage or a file that is located in the App parameter in order to use it in your HTML image code. So basically, you cannot use the image file that is attached in your authentication parameter. I hope this makes things clear.
  11. Hi @SteveRHC, As I know based on the Caspio's System requirements (https://howto.caspio.com/system-requirements/) you might resolve the issue by doing these steps:
  12. Hi @Carioca -- Just want to inform you that Caspio's SMS feature only supports US & Canada phone number for now. You can check this article and video tutorial for more details: ============ https://blog.caspio.com/tip-sms-notifications-from-caspio-apps/ https://blog.caspio.com/send-automatic-sms-alerts-using-twilio/ ~WatashiwaJin~
  13. You can also try to check this helpful documentation about dates and calculations: https://howto.caspio.com/faq/reports-datapages/calculated-fields-and-datediff-function/ https://howto.caspio.com/datapages/reports/advanced-reporting/totals-and-aggregations/ https://howto.caspio.com/function-reference/
  14. Hi @NeoInJS -- if that is the case then I suggest that you follow these steps: - Add a "Virtual field" that uses "Calculated value" as the form element and paste the formula: CONVERT(DATETIME, (CAST(Month(SysUTCDateTime()) AS VARCHAR) + "/01/" + CAST(Year(SysUTCDateTime()) AS VARCHAR)), 101) - You can also hide the Virtual field -> go to the advance option then check "Hide Field: - Now, we are going to create a script that will get the value form the formula. For us to do that we need to add a "Header and Footer" -> then in the footer paste this code: <script type="text/javascript"> document.addEventListener('DataPageReady', function (event) { var vrt = document.querySelector('[name*=cbParamVirtual1]'); var date = document.querySelector('[name*=InsertRecordYOURDATEFIELD]'); vrt.onchange = function() { date.value = this.value.substring(0,9); } }); </script> - Make sure that you unchecked the "Enable HTML Editor" in the advance tab of the Footer. - After this process, your date field will get the first day of the month and it still can be editable For more details, check these article: https://howto.caspio.com/function-reference/ https://howto.caspio.com/datapages/ajax-loading/ I hope this helps ~WatashiwaJin~
  15. Hello @NeoInJS, For you to be able to get the first day of the month, you should use "calculated value" as the form element then paste this formula: CONVERT(DATETIME, (CAST(Month(SysUTCDateTime()) AS VARCHAR) + "/01/" + CAST(Year(SysUTCDateTime()) AS VARCHAR)), 101) I hope this helps. ~WatashiwaJin~
  16. Hey @waltmayo as I know Caspio offers an Expert session that will help you with your issue with scripts or complex functionality. An Expert Session is a 1-hour session that is conducted via screen share by a Caspio Support Engineer. It also has a cost of $250/hr. If you want to continue, just contact Caspio support: https://www.caspio.com/support/
  17. Hi, just to update this post. Here are the new and updated links that you can use and refer: Caspio's Ready-Made-Applications: https://www.caspio.com/apps/
  18. Hi, just to update this post. Here are the new and updated links that you can use and refer: Custom Hide fields in Submission form: https://howto.caspio.com/tech-tips-and-articles/common-customizations/how-to-hide-fields-in-datapages/
  19. Hey @oceaim have you tried to use the "responsive code" in your DataPage? This might solve your issue, check it out: https://howto.caspio.com/tech-tips-and-articles/responsive-datapages-overview/ ~WatashiwaJin~
  20. Hi @TroyPurdue, Please note that you cannot use the Aggregated functions directly in the Formula or Calculated fields: For more information, check this documentation: https://howto.caspio.com/function-reference/ ~WatashiwaJin~
  21. You can also refer to this following documentation: https://howto.caspio.com/datapages/reports/advanced-reporting/totals-and-aggregations/ https://howto.caspio.com/datapages/reports/advanced-reporting/calculations-in-forms-and-reports/ https://howto.caspio.com/function-reference/
  22. Hi @wmclaren, For this workflow, I suggest that you use a calculated field to determine if the value is a win or loss. Example: CASE WHEN [@field:FieldName] = 'Win' THEN 1 ELSE 0 END Then use the that calculated field in the Totals and Aggregation, and use AVG() to get the percentage of that. I hope this helps. ~WatashiwaJin~
  23. WatashiwaJin

    Column Widths

    You can actually change the column width of the result DataPage in the advance tab configuration of the field itself:
  24. Hi @dmchenry, You can actually do sorting in report and use your DateTime field as the default sort. Check video tutorial for more further details:
  25. Hi @fromtheabbey, You might also want to refer to this documentation related to your inquiry: https://howto.caspio.com/parameters/parameters-as-query-string-values/ https://howto.caspio.com/parameters/passing-parameters/ https://howto.caspio.com/parameters/receiving-parameters/
×
×
  • Create New...