Dr. Evil Posted September 26, 2022 Posted September 26, 2022 Hello, have puzzle to solve, and I'm not certain how to approach it. Thought I would post here and see how others may approach this. I've attached a little demo file to play with. In my ITEM table I build out charges that I will invoice Clients. I commonly charge people in 3 ways: 1) hourly fee (rate * hours) 2) markup fee (expense + markup) 3) flat fee (arbitrary set fee) Thinking that the expense field is the starting point. Trying to make data entry minimal as posible, only give User "markup" fields if there is an expense (tho I wonder if saying [expense > 0] is solid enough to build off of as used in the demo). In other solutions I've used a boolean field marking the ITEM as an expense, but I dunno. If there is no Expense, User would just skip over entering any data and the Hourly Fields would show. Than both with the Markup option, and the Hourly option... User could enter a number in the Fee field manually, this would be considered a type of Flat Fee. I would like the fee label to reflect which method is being used. This model and scheme of mine may need to be trashed, looking for a simple fresh approach if this one is not sound. Any help is very appreciated, thank you in advance! ItemEstimateModel01.fmp12
Dr. Evil Posted September 26, 2022 Author Posted September 26, 2022 Maybe tricky, but there may be an expense tied to the Item, and User may wish to use the hourly estimator, or do a flat fee.
comment Posted September 26, 2022 Posted September 26, 2022 I think I would so something like the attached sketch. In the final version, once the user has selected the charge type, the irrelevant fields would be hidden. Also, if the user attempted to change the type after already filling some fields, there would be a warning followed by deletion of the data. Alternatively, you could display all fields but allow entry in only one set. Here the type field could be calculated - or dispensed with altogether. charges.fmp12
Dr. Evil Posted September 26, 2022 Author Posted September 26, 2022 OK, great! Seems like I'm on the right track then (screen shots of my in use solution) attached. I'm currently keeping the data for expense/hourly/fee so if User switched back from one to the other, they would not have to re-enter data if they did not want to. But maybe I should strip the data? I love the idea of being ridged on showing data specific to method of billing chosen. I was just driving myself crazy thinking, what if there is an expense, but did not wanna bill via Markup, but rather via Flat Fee, etc... Thank you! I'mma try and un-complex my brain on this, lol.
Dr. Evil Posted September 26, 2022 Author Posted September 26, 2022 14 hours ago, comment said: In the final version, once the user has selected the charge type, the irrelevant fields would be hidden. Also, if the user attempted to change the type after already filling some fields, there would be a warning followed by deletion of the data. I've modified the sketch file to start implementing the hides and scripts... I've changed the Charge field from a calculation to an auto-enter calculation so that user can enter a flat/custom charge. With this change, the Fee Field was no longer needed and deleted. In the sketch file attached, I've tried to place an "override" flag when User enters a flat/custom charge amount. I've not been able to make it work. There should not be an "override" flag if Flat type is chosen. Also, I don't know the cleanest way to warn user that data will be deleted if they change Type. I've created a script to clear the fields, triggered when Type is modified. Check out the sketch file, thank you kindly! Your pro tips are very much appreciated! charges_02.fmp12
Ocean West Posted September 26, 2022 Posted September 26, 2022 In one system I did years ago depending on the product and the client a product/service price could be looked up from catalog price, or custom negotiated price determined by a Purchase order that has a from and thru date or an Ad-hoc price, and if manager approved even a discount percentage. This would derive my unit price, which in this case would then be multiplied by the quantity, to get the line total charge. Calculating and having these values on the line items do provide an extra element of analytics to provide insight on how much you have discounted your fees or rates. Flipping things over from the point of view of your pricing catalog you can determine if there is trends on giving discounts on products / services. Depends on the use case and how many people have such permissions to alter prices. But it is something to keep I mind. Not seen by the customer of course we also included the cost basis of at least physical sold goods as a data point in the invoice line item. This way when we do annual price increases looking at historical data we could maintain costs as they were.
Dr. Evil Posted September 27, 2022 Author Posted September 27, 2022 that's cool! I do plan on working in a catalog feature. but for me, its a challenge because a catalog item for example might be a Brochure. That brochure will be a collection of: PROJECT record Fall Celebration ASSIGNMENT record Brochure ITEM record Design Time ITEM record Print ITEM record Shipping Certain things like a standard Brochure I typically charge the same amount of time for, but so often bids differ from project to project. As well as printing and shipping charges always flex.
comment Posted September 27, 2022 Posted September 27, 2022 5 hours ago, Dr. Evil said: I've tried to place an "override" flag when User enters a flat/custom charge amount. I've not been able to make it work. There should not be an "override" flag if Flat type is chosen. I am not sure I understand this part. In general, with an auto-entered calculation, there is no way to know if the value in the field was calculated or entered by the user. You can only test for the actual value being different from what would have been calculated. Again in general, my preferred method for enabling user override would be to get user entry in a dedicated "override" field. Then calculate the final result using a calculation field. 5 hours ago, Dr. Evil said: I don't know the cleanest way to warn user that data will be deleted if they change Type. I have added an example script to my file: charges+.fmp12
Recommended Posts
This topic is 861 days old. Please don't post here. Open a new topic instead.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now