Jump to content


Caspio Evangelist
  • Posts

  • Joined

  • Last visited

  • Days Won


kpcollier last won the day on January 17

kpcollier had the most liked content!


Recent Profile Visitors

1,639 profile views
  1. I've got a search and tabular report datapage that is for working on projects that we have. Each project is assigned a Technician, and I have a Technician field in the search form to let the user filter projects by it. I am trying to create two functions for the Technician dropdown field in the search form. First, I want to have a blank value in the dropdown that will let the user 'ignore' the field in search criteria... essentially skipping this field in the filter process and showing all projects regardless of technician value. I also want to have another blank value (or something similar with the same workflow) that the user can select, to which they will ONLY see projects where Technician field is blank. So, essentially, I am looking to use both options in the Advanced tab that you see in the image below: 'Ignore field in search criteria' and 'Match blank values'. I was thinking of using criteria to create another Technician field, that can be used as the 'Match blank values' field... but I think it would always be used in the filtering process. I'm not sure how I'd not include this filter if the user chose to ignore the Technician field in search criteria. Any help is appreciated.
  2. I don't believe so. I think you can only upload Access data, database tables, and table relationships.
  3. Alright... obviously, you can't just have a button out there that a user can click to run a trigger on a table. However, I'm trying to simulate something like this... I have a Certificates Report, which displays information related to the certificates that our employees have. These certificates have an expiration date and an expiry status. We have about 8 certificates that each employee renews every year at our annual safety meeting. 8 certificates each x our amount of employees is a lot of work to manually update from a tabular report. I'm trying to figure out a way to let one of my users update specific Certificates in my table to reflect a new date and a Active status with little effort. The perfect workflow would be to have a button that would run a trigger when clicked. Building the trigger that updates the fields on specific certificates is not a problem for me, but getting the trigger to execute from the front end - on a tabular report - seems challenging. I would like to not have to use another datapage, if possible... If any of you have solved a similar problem another way, I am open to suggestions. Thanks!
  4. Do you have a unique field in your table? Do you include it in your uploads? I have a similar workflow, where I need to upload excel files weekly. I have a unique ID field in my caspio table that I include in my excel data. When I do an import and some of the records from the excel sheet have a unique ID that already exists in the table, the import process will upload all records in my excel data besides the duplicates. Then, the import message will state the import is complete with some errors and show you that there were some duplicates that weren't added. It doesn't tell you what records were duplicates. But it does insert the other records that are not duplicates while not inserting the duplicate records. *I do not think you can use ID fields in the import process. For me, I am using a table formula field that is set to unique, and includes the ID and another field. However, I think you'll be able to just create a formula field in your table, have it just be set to copy the ID field, and set it as unique. Then, when the import process is happening, the system will not include any imported data that would break the formula in your table. Hence, it would not import duplicates. Or, you can use a couple of fields you have already in your table that you don't want to be duplicated. Say a Customer Name and Email... just create a formula with those two fields and make it unique.
  5. Yeah, I just noticed that. It seems when you include a Formula field and an Integer field together, the formatting field greys out. I'm not too sure how else you'd be able to do it, besides typing out the average formula yourself in the Formula section and then formatting it. I'll try to play around with it a little.
  6. You should be able to do it with the 'Formatting...' button on the bottom right of the Wizard. Click that button, select Custom (or Localization) and enter in the format type you want. You can adjust digits after decimal.
  7. Sorry @RuisiHansamu. I took this app through a major overhaul not too long ago and do not have the workflow above anymore. I just checked to see if I saved those old triggers... it looks like they were in different triggers but I am not certain. I have one for Insert, Update that has the 2nd trigger image from above. However, I do not have any triggers that have the 1st trigger image of the delete block anymore.
  8. I believe my issue is with the last eventlistener in my script. When the page refreshes after a failed submission, the first (cascading) dropdown resets to blank if it is hidden, but the 2nd dropdown does not. I am thinking that the script is not reading the checkbox value (or the value isn't loaded up yet or something) and automatically going to the ELSE clause in my if/else statement. So, it reloads, looks at the checkbox (that is checked), thinks it is not checked, and goes to the 2nd part of my if/then statement, which would give it the blank value after the delay.
  9. After messing around a little bit... I was getting a 'checkBox not found' error. Which makes sense because I for some reason left it out of the setTimeout function. So, I changed that, and no longer get any errors. I have noticed that, with the timeout delay, the value is still in the real Cost Code field after the page reloads after failed submission, and then changes to blank after the delay duration. But, this only happens when the checkbox is checked (to hide 1st virtual dropdown). If the checkbox is not checked, and the value is coming from the first virtual dropdown, the value stays and works. But, when the checkbox is checked, and the value is coming from the 2nd dropdown, the value disappears after the delay. When viewing the element in devtools after it goes blank from reloading, it still shows the element has the correct value... but the text box shows blank. <input type="text" maxlength="255" name="InsertRecordCost_Code_ID" id="InsertRecordCost_Code_ID" value="100" class="cbFormTextField" style="width:216px;">
  10. I am using two virtual fields in a submission form. They both have the same datasource, but one is cascading and one is not. This submission form is a timecard for employees. The employees first need to select the Job they worked on (which is the parent value for the cascading virtual field), and then use one of the virtual field dropdowns to select which type of material they were working on. One virtual field dropdown is always hidden, with a checkbox to switch between the two. The idea is to limit the employees Material selection to what we have saved for it. That is where the cascading feature comes in - the user selects the job and the cascading virtual field allows you to select between the materials we have set for the job. However, if the material they used isn't in the cascading list for some reason, they can check the checkbox to get access to the entire material list that we have, so they can choose any of them. I hope this makes sense. We are trying to limit our employees choosing the wrong materials for the job, pretty much. To save the selected value in the actual Material field (named Cost Code), I am using some Javascript. Pretty much just running event listeners on change of each of the virtual fields and copying the value over. This is working. However, if the user doesn't enter in a value to any of the Required fields, the form stops submission and refreshes like normal. But the value selected in my virtual field dropdown still shows as selected, and the script is not bringing the value over to the actual field anymore. So, to the user it looks like their material is still selected, but the value is not being saved. Any ideas how I can get the value to copy over to the actual field upon refresh due to missing required fields? document.getElementById("cbParamVirtual6").addEventListener("change", function(){ setTimeout(function(){ document.getElementById("InsertRecordCost_Code_ID").value = document.getElementById("cbParamVirtual6").value; }, 1500); }); document.querySelector("select[id*='cbParamVirtual5_']").addEventListener("change", function(){ setTimeout(function(){ document.getElementById("InsertRecordCost_Code_ID").value = document.querySelector("select[id*='cbParamVirtual5_']").value; }, 1500); }); document.getElementById("cbParamVirtual7").addEventListener("change", function(){ var checkBox = document.getElementById("cbParamVirtual7"); setTimeout(function(){ if(checkBox.checked){ document.getElementById("InsertRecordCost_Code_ID").value = document.getElementById("cbParamVirtual6").value; } else { document.getElementById("InsertRecordCost_Code_ID").value = document.querySelector("select[id*='cbParamVirtual5_']").value; } }, 1500); });
  11. Just don't hold your breath.
  12. Also....... why is the datapage wizard still so small? It is like a quarter of the screen and cannot get bigger. There is SOOOO much unused white space when editing or creating a new datapage, with the constant need to scroll through the tiny window to work on it. Specially when writing code in the header/footer/html block, where you can't expand the window whatsoever. Also not even close to a code editor. Idea on the Ideabox for this that was 'Planned' in 2017
  13. I would duplicate your table and try it on that before you use it on your live table. I haven't tested the above.
  14. Could probably do something like below. Obviously, instead of BidTable use the table you need to edit. And, instead of BidName, use the field that you need to be changed. Just make that field equal itself, while inside the lowercase block. The WHERE clause is because I'm not sure how many records are in your table. There is a 10,000 Max # of Affected Records limit for tasks and triggers. So, if you have more than that, you will need to break this down into multiple parts. Hopefully your table has an ID, if not, they are easy to add and delete afterwards if you need. Once you run the first task, change the ID values in the WHERE clause to '9999' to '19998', and so on. I usually like to do 9,000 intervals.
  • Create New...