1044 lines
51 KiB
Plaintext
1044 lines
51 KiB
Plaintext
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
@@@@@@@@@@@@@@@ ROADMAP STAGE 6 - "REALITY" All in on porting over all the real objects from v7
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
“Accept the things to which fate binds you, and love the people with whom fate brings you together,but do so with all your heart.”
|
||
|
||
― Marcus Aurelius, Meditations
|
||
|
||
|
||
## BIG PICTURE TO RELEASE
|
||
March
|
||
loose ends
|
||
Workorder*, quote*, pm* implementations
|
||
case 3850 has all the good stuff about how to do this, UI concepts are basically worked out at this point and contract and po have resources to copy from for error / lists etc
|
||
April
|
||
Schedule form
|
||
Review all v8 cases top to bottom and triage / implement
|
||
V8Migrate completion
|
||
All stock reports (and schedule ones)
|
||
2FA - same as DO authentication code app
|
||
May
|
||
Manual pages
|
||
Extensions to replace current add-on's (accounting etc)
|
||
Load testing
|
||
Beta testing
|
||
Rockfish / Back end infrastructure
|
||
Biz decisions about hosting etc
|
||
June 1st
|
||
Release!
|
||
|
||
|
||
## CURRENTLY WORKING ON: misc client items then migrate
|
||
just burn through, skip any that are low priority or will naturally get worked on as part of workorder etc
|
||
|
||
|
||
## MISC ITEMS THAT CAME UP
|
||
|
||
## E2E TESTING
|
||
|
||
|
||
## V8MIGRATE
|
||
|
||
todo: custom fields field names are not coming across, still show "Custom 1" when shoudl show whatever is set
|
||
todo: assigned doc not found text has too many newlines in it, should just sit on one line in exported notes
|
||
todo: dirty big test again with contracts etc
|
||
todo: v8 migrate additions
|
||
Erase DB warning must be very distinctive like bright yellow and red with crossbones etc
|
||
Report sent *to* the new server upon completion (any state) via MEMO to superuser
|
||
should send the entire contents of the output screen error or not as it will contain useful info like dupes not exported etc
|
||
Duplicate id not exported
|
||
found this in the wild with 4a database 4 workorders not exported due to this
|
||
message doesn't clearly say that number was exported already
|
||
is there a way to still export them?
|
||
Is it possible to login during migrate to the v8 server?
|
||
Need a running count per item, I have the total at the start so it should show what item it is currently processing of that count like 50/1000 or something
|
||
|
||
|
||
|
||
|
||
## CLIENT MISC ITEMS
|
||
|
||
|
||
|
||
..........................................................................................................
|
||
* todo JC misc list:
|
||
****************
|
||
User Settings
|
||
****************
|
||
(italic is mine original message, your original response in []. The **** is my reply to yours)
|
||
How will the user know what "language code" to enter - gives only one example "en-US" but when start typing in, nothing comes up to select?
|
||
[this is intended as an override for what their browser defaults to already which should be correct 99.99% of the time and should almost never need to be changed. Maybe I could include a link to the codes on a wikipedia page or something, they change from time to time and it wouldn't bre practical to include a list preset]
|
||
****yes a tooltip or URL link next to/under the label or the entry field would help by leading users to that info (in the URL) if they need.
|
||
****I'd also like to suggest "Override language code" as the label, to indicate that it OVERRIDES something existing.
|
||
|
||
(italic is mine original message, your original response in []. The **** is my reply to yours)
|
||
How will the user know what "Time zone" to enter - gives only one example "America/Vancouver" but when start typing in, nothing comes up to select?
|
||
[same issue as language code above]
|
||
****yes a tooltip or URL link next to/under the label or the entry field would help by leading users to that info (in the URL) if they need.
|
||
****I'd also like to suggest "Override Time Zone" as the label, to indicate that it OVERRIDES something existing.
|
||
|
||
(italic is mine original message, your original response in []. The **** is my reply to yours)
|
||
I see "under" the "Map URL template" dropdown list where can select Google, Bing etc. Is the idea that a user will "know" what this is used for if they use it?
|
||
[yes, if they have a particular mapping site they prefer they can select it here otherwise defaults to google maps.]
|
||
****if the Google url template is the default, can it show preselected? Cause right now nothing shows as selected, which to me as a user would indicate that "nothing" is set/default. OR if I have misunderstood and the default is not in the list, then the label to say "Override MAP URL template" to indicate selection overrides a default that is already set elsewhere.
|
||
|
||
|
||
******************
|
||
Tags
|
||
*****************
|
||
(italic is mine original message, your original response in []. The **** is my reply to yours)
|
||
How do I "see" ALL possible tags so I as an end-user can pick an existing tag OR so I can see the format of how tags are entered in my company (i.e. my company might use a prefix PC for a Part Cateogry or a DZ for a dispatch zone, or enter dispatch zone names by main street instead of east/north etc - and a supervisor won't want to have to manually sit with each staff and tell them what to do, thinking it should be intuitive...)
|
||
[not a feature currently. What are your thoughts on what is should look like and where it would go?]
|
||
Where can I as an end-user see ALL tags? what if I wanted/needed to remove/edit the same tag everywhere can't I do so from a list of available used tags - i.e. tag "blue" no longer used, want it removed from everything?
|
||
[not a feature currently. What are your thoughts on what is should look like and where it would go?]
|
||
****When I click to enter a tag (but have not yet typed anything), I'd expect/like to see a list of ALL existing tags drop down that I can then scroll down and select(doesn't do this as of right now March 15 2021 alpha-104). Whereas if I instead start typing a letter, then I would expect to see a dropdown list of tags that start with that letter (does this already!)
|
||
|
||
**************************
|
||
PO
|
||
*************************
|
||
|
||
(italic is mine original message, your original response in []. The **** is my reply to yours)
|
||
Is this as expected? Statuses don't automatically change at ANY point .... I take it that the status is FULLY up to the user. And the default appears to be Open - On Order UNLESS the end-user themselves actually changes it.
|
||
[Yes, completely up to user how they choose to use it. It's so different in how it works I struggled to find a system that woudl work automatically and not get in the way. The status before was tied to how it worked but it doesn't work that way anymore and technically users could just hide it if they don't use it. If you have any suggestions on something different I can look into it, just couldn't think of a clean automatic system at the time]
|
||
***OK no further suggestions at this time
|
||
|
||
(italic is mine original message, your original response in []. The **** is my reply to yours)
|
||
ISSUE **PO numbers duplicating:
|
||
the last generated PO # was 22. I edited an existing PO 17 to use PO 24, saved, all good. Created another po while testing stuff it used 23. And then I created another PO and I expected this PO to jump 24 and instead be labeled 25 BUT it TOO automatically set itself to number 24. So now I have TWO pos with number 24 (yes yes me as enduser can go in and change, so is this expected that numbers WILL ALWAYS be whatever raven decides and never actually follow +1 from the last biggest number?)
|
||
[Yes this is still a work in progress. I thought originally it might be a cool idea to make it editable or at least in case there was an issue or something but how you saw it working is how it works, it doesn't take into account existing records and needs a command to the db to reset the seed number separately. I could make some code that checks on save if the PO serial has been overridden and tries to force the serial number seed value to change but saw all kinds of potential issues around that too. (performance issues, could mess up another user also saving a new PO at the same time; user could accidentally enter a huge number and then it's stuck dishing out more huge numbers automatically etc). I was thinking maybe make it read only except for the superuser account only who could login to make changes and separately reset the next serial seed number in Global settings to avoid the issue you found with duplicate numbers. What are your thoughts on this?]
|
||
***taking into account what you wrote and what has been experienced:
|
||
- I too believe that users WONT want Raven to automatically find the highest number and force the next PO to +1 of the highest - for example: a company could have some fucked up numbers in the high millions due to previous SQL issues but wants to restart going forward from the number 1000.
|
||
- Based on what you wrote above, I take it that the db maintains its own "seed" number that updates internally somewhere as a new PO number is saved/assigned to a PO object.
|
||
- My suggestion: have a field area in the Global Settings for a setting labeled "Next PO Number"
|
||
(Preferred display) IF this seed # is easily obtainable, then prepopulate this field"Next PO Number" with the next expected "seed" # .
|
||
If user wants the "seed" number to be higher or lower then what are on existing POs to date, they totally can edit this field, save and the "seed" number gets changed.
|
||
Then use similarly for Workorder numbers, Quote numbers, PM numbers
|
||
|
||
|
||
|
||
******************
|
||
Receiving PO ITems:
|
||
******************
|
||
(italic is mine original message, your original response in []. The **** is my reply to yours)
|
||
Is this as expected? - Click on the Edit, opens to the editing of PO. if enter in a specific number to receive (i.e. ordered 5 received 2), didn't realize that clicking Receive causes ALL to be received.
|
||
I understadn that majority clicking on Receive works best - AND if want to receive partially, need to click ONLY on Save. BUT did want to point out that it is not obvious. Then again, don't want it to be overly with info and user can see AND can edit...
|
||
[I could change the translation text to "receive all" or put the "ordered" amount to the right of the Receive text so it says "Receive 3" for example? What are you thoughts on that?]
|
||
****I'd say to have the action button text changed to "RECEIVE ALL" - the ALL will make MUCH more obvious what expects to happen when click on, without having to .
|
||
|
||
|
||
|
||
|
||
******************
|
||
Filter Manager / filtering on list (this was NOT previously sent to you)
|
||
******************
|
||
|
||
***When select "-" in the Filter Manager, I expect that no filtering/sort order etc, will be applied. I expect that selecting "-" resets all back to nothing.
|
||
BUT when I select the "-" in Filter Manager, the last filtering/sorting that was used on the grid REMAINS. Wanted to bring this to your attention in case there to confirm this is as expected?
|
||
Scenario: Filter on one or two columns. Sort on one or two columns. Via Filter Manager save this as a filter view. Now select "-" in the Filter Manager (at which point I expect that selecting "_" would remove the filtering and sorting and reset the datatable back to no filtering/sorting.
|
||
|
||
|
||
|
||
***************
|
||
Taxes*
|
||
***************
|
||
|
||
You added additional decimal places as I requested. BUT I believe I was mistaken to request because I was once again still getting the the wrong impression what the format is.
|
||
REMOVE THE extra decimal place - make it so max of two decimal places so if have a 6.25% tax would enter in 6.25; if 16.75% would enter in 16.75 I know of no known tax rate that has more than 2 decimal places.
|
||
|
||
Taxes won't let me change an existing Name if previously selected on any other record. Scenario: A change happens to a tax %. and Admin needs to keep using the old tax for some things BUT wants users NOT to select this "old" tax for other stuff.
|
||
|
||
Taxes won't let me change the existing Active status if previously selected on any other record. Scenario: This is the most common use - there is a change to a tax %. So they want to set a tax to inactive so no one selects it anymore. BUT as of right now Raven won't allow editing of a tax, even just the Active field, if that tax has been linked (selected) with any other record.
|
||
|
||
*Name and Active for taxes brought to your attention in a previous email. Including it here so all together in one doc.
|
||
|
||
|
||
|
||
...................................................................................................................................................................
|
||
|
||
|
||
todo: reportClientMetaData in gzapi has DefaultLocale property in it which is just part of the language, can it be removed?
|
||
it might be buggy if there is no dash in the language? Is that a thing?
|
||
check at server how it's used
|
||
todo: confirm erase database should reset all id values if they aren't reset already so that future data doesn't result in a new PO starting at 29000 due to huge db trial seed prior
|
||
todo: Popup notes now AlertNotes - a whole section of important notes at the top that shows *all* notes combined like customer popup and contract notes
|
||
that shows all the time in the workorder UI with an option to minimize maybe or something
|
||
This would be better than popup as it's always visible not dismissed and less ui fuckery to boot.
|
||
See case 3855
|
||
todo: use trans key "AlertNotes" in place of any popup notes variation
|
||
todo: poitem edit form currency fields when updated by server on save lose currency format and show as raw decimal number
|
||
maybe currency control does not respond to underlying data changes it didn't initiate?
|
||
seems maybe it's ok in main form but that's maybe just because it doesn't change values automatically
|
||
todo: datatable single select mode, is this even a thing?
|
||
if not then I should remove that code, it's just taking up space and complicating shit for no reason
|
||
todo: many stock reports could be made now for most objects
|
||
|
||
|
||
todo: it's a bit hard to click on a single digit or character link in a data table
|
||
e.g. serial number 1 of a po
|
||
can the region be expanded with invisible text or something?
|
||
todo: WHEN HAVE WORKORDER FORM customer alert notes
|
||
todo: remove widget now? Back and front (comment out obvs not remove entirely)
|
||
|
||
|
||
## SERVER MISC ITEMS
|
||
|
||
NOW
|
||
....
|
||
|
||
What up with this and can it be blocked from logging / something simpler logged instead?
|
||
2021-03-17 05:19:27.0750|ERROR|JobsBiz|Server::ProcessJobsAsync unexpected error during processing=>System.Threading.Tasks.TaskCanceledException: The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing.
|
||
---> System.TimeoutException: The operation was canceled.
|
||
---> System.OperationCanceledException: The operation was canceled.
|
||
at System.Threading.CancellationToken.ThrowOperationCanceledException()
|
||
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
|
||
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.GetResult(Int16 token)
|
||
at System.Net.Security.SslStream.<FillHandshakeBufferAsync>g__InternalFillHandshakeBufferAsync|182_0[TIOAdapter](TIOAdapter adap, ValueTask`1 task, Int32 minSize)
|
||
at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)
|
||
at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)
|
||
at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
|
||
at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
|
||
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
|
||
at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
|
||
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
|
||
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
|
||
at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
|
||
at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
|
||
at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)
|
||
--- End of inner exception stack trace ---
|
||
--- End of inner exception stack trace ---
|
||
at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)
|
||
at AyaNova.Core.License.FetchKeyAsync(ApiServerState apiServerState, AyContext ct, ILogger log, Boolean calledFromInternalJob, Boolean devTestTrial) in C:\data\code\raven\server\AyaNova\util\License.cs:line 522
|
||
at AyaNova.Biz.CoreJobLicense.DoWorkAsync() in C:\data\code\raven\server\AyaNova\generator\CoreJobLicense.cs:line 72
|
||
at AyaNova.Biz.JobsBiz.ProcessJobsAsync() in C:\data\code\raven\server\AyaNova\biz\JobsBiz.cs:line 178
|
||
|
||
|
||
todo: is there a way to tell if other connections are being used to AyaNova db
|
||
like a utility or they are fucking around and it's affecting performance etc
|
||
|
||
LATER
|
||
......
|
||
|
||
todo: Changes to allow in place updates of server without erasing data:
|
||
Needs to be supporting this early as possible so that upon release we can easily make changes without breaking existing setups or forcing complex actions
|
||
how to add locale keys in future after release without erasing all data?
|
||
Ideally I'd like to continue on to just edit the json translation files and the server looks for missing items and adds them automatically
|
||
so that it just works without having to erase the db
|
||
maybe a version on translations so it knows which one it's dealing with?
|
||
But then again, if it just checks them all it can fix anything missing automatically in case of fuckery and not assume they are ok
|
||
Stock locales can just be completely replaced at any time, custom ones need a fixup,
|
||
Custom locales should include where they came from (which language) so can more easily add new keys
|
||
Schema updates in place not require full delete
|
||
todo: figure out method to determine all translation keys actually used and remove unused ones entirely as they will show in the Translation ui and don't want to confuse people
|
||
Note: can do a search in Code editor at client for ay.t( and it will show all the translation keys fetched in code for the most part other than grid columns
|
||
can click in results and copy all to text which could then be processed to find all unique values??
|
||
Or, just exercise the whole app and all lists and then can pull from the local cache in the browser!!!
|
||
|
||
todo: NOTIFICATION after the fact
|
||
what happens when a user subscribes to a notification after an object was created
|
||
for example if a unit has a contract and they subscribe to contract expiring they won't get notified about units unless they are edited and saved
|
||
*after* the user subscribed
|
||
What did v7 do?
|
||
How to handle this??
|
||
Ideally it would work with existing objects and not require them all to be edited or is that an issue, can it be good enough that it works going forward?
|
||
Most subscriptions won't matter as they are direct immediate and one off but the timed and aged ones are definitely an issue.
|
||
It might have to run through those and subscribe in the user, maybe a static op on a *Biz object that you call and say "subscribe this user to all subs" and it iterates
|
||
the biz objects one by one and sets as appropriate??
|
||
|
||
todo: GetWorkorderSerial/name from leaf nodes
|
||
traverse up the tree and fetch the serial number
|
||
once coded fixup in purchaseorderbiz::getasync MIGRATE_OUTSTANDING bit
|
||
|
||
|
||
todo: tag search in picklist, does it support more than one tag? I forget
|
||
no, no it doesn't. Hmmm... fuck
|
||
maybe they can enter unlimited tags as long as they have a ..before each one?
|
||
Users may need to "triangulate" on to an item by multiple tags
|
||
|
||
todo: unit meter reading event?
|
||
|
||
|
||
TODO: //MIGRATE_OUTSTANDING comment tag
|
||
search for this comment tag as it will contain items that could not be done until other items were migrated first
|
||
The tag will contain the description for each
|
||
|
||
|
||
|
||
|
||
todo: many biz objects are not using new PUT methodology
|
||
Might be because new methodology assumes complete PUT object as a entire replacement not a partial update
|
||
some of these objects (User) do partial updates so....
|
||
also this includes *all* of the initial workorder object so there's that
|
||
might be that they don't need it but for consistency should check into it
|
||
|
||
|
||
|
||
########################################################################################################################
|
||
########################################################################################################################
|
||
########################################################################################################################
|
||
########################################################################################################################
|
||
########################################################################################################################
|
||
|
||
|
||
|
||
CURRENTLY DOING: LOOSE ENDS, my misc above and Joyce Misc list items below
|
||
|
||
|
||
working up to workorder which has to be done in next 3 weeks. Look into it and will likely spot things that need to be done before it that I missed
|
||
|
||
todo b4 starting workorder list:
|
||
WorkorderStatus (check cases, very many supposedly, but they are likely more about the workorder and notification than about the status itself)
|
||
|
||
|
||
------------------------------------------
|
||
|
||
|
||
|
||
EACH OBJECT DEV CYCLE:
|
||
FIRST
|
||
Check cases, make sure not changing the object fundamentally, many v7 objects are going to change for cases (particularly inventory related)
|
||
BACK
|
||
AyaType and associated code
|
||
BizRoles
|
||
Model and Database Schema and AyContext
|
||
DbUtil EraseAllData method
|
||
Update function PUBLIC.AYGETNAME in aySchema for new type
|
||
Biz object and all supported interfaces (searchable, exportable etc)
|
||
Reportable Viz fields if reportable
|
||
Biz Object SEARCH Index / getsearchresult code add unique text fields
|
||
Business rules port from v7 and new ones
|
||
ValidateCanDete MUST check if any foreign key constraints and return proper error rather than bombing on attempted delete
|
||
Do check constraint first then biz rule so can test down to db
|
||
ALL biz rules where possible must have mirror db constraint to avoid fuckery with direct modified data
|
||
Notification code if applicable
|
||
Controller routes and associated code
|
||
Translation keys
|
||
FormFieldReference for object if it posesses an customizable form
|
||
DataList if applicable (be minimal with the default fields)
|
||
Picklist
|
||
Seeder generate samples
|
||
If anything needs to be changed down the road then flag it in comment with //MIGRATE_OUTSTANDING
|
||
FRONT
|
||
AyaType / rights
|
||
front route
|
||
List form
|
||
Edit form (## TEST ALL INPUTS ON EDIT FORM, DON"T ASSSUME THEY WORK)
|
||
Add to smoke test !!! VERY IMPORTANT
|
||
DOCS (at back but with front links, maybe not fleshed out just placeholder ok for now)
|
||
REPORTING
|
||
Reportable & VIZ fields
|
||
DASHBOARD
|
||
Add widget if dashboardable https://docs.google.com/document/d/1cEesyryhM0zYkH0PEswiuOezUTA_Nv5Xn3jfBczdQmk/edit
|
||
IMPORT
|
||
imports and flows through to new front end viewable and searchable and printable etc
|
||
|
||
|
||
|
||
## OBJECT ORDER
|
||
Preliminary order to get the ball rolling, these are the easiest starting point:
|
||
|
||
Inventory Migration
|
||
migrate inventory added to v8migrate as final step of export; code it based on balances and also insert serials etc
|
||
it checks the balances in v8 then compares to v7 then issues an adjustment to bring into sync
|
||
this way (last thing) we are always covered no matter what happens with wo import etc
|
||
|
||
|
||
WorkorderStatus
|
||
no dependencies, possibly many cases, read over carefully before implementing
|
||
|
||
Workorder
|
||
When do this need to go back and do a bunch of //MIGRATE_OUTSTANDING
|
||
i.e. show all
|
||
todo: Consider adding latitude / longitude to wo, quote, pm objects
|
||
rate split
|
||
can copy over from the unit or customer or set themselves
|
||
and can always hide
|
||
means wo could be scheduled for ad-hoc locations and serviced that way, i.e. a truck parked on the side of the highway etc
|
||
|
||
Quote
|
||
|
||
PM
|
||
|
||
Schedule form
|
||
|
||
|
||
|
||
# V7 objects now TAGS, the following objects are imported as tags and suffixed with a period and then short versions of the object type in the tag name
|
||
- Region
|
||
- UnitModelCategory
|
||
- UnitServiceType
|
||
- WorkorderItemType
|
||
- ClientGroup
|
||
- WorkorderCategory
|
||
- PartCategory
|
||
- DispatchZone
|
||
- ScheduleableUserGroup
|
||
- ClientNoteType
|
||
- VendorType ## LATE ADDITION
|
||
|
||
|
||
## v7 DB DEPENDENCIES
|
||
object
|
||
depends on
|
||
|
||
AssignedDoc * Already handled automatically by v8 migrate
|
||
none
|
||
|
||
xaclient
|
||
adispatchzone - TAG
|
||
aheadoffice
|
||
aworkorder
|
||
|
||
xaclientgroup - TAG
|
||
none
|
||
|
||
xaclientnote
|
||
aclientnotetype - TAG
|
||
aclient
|
||
|
||
xaclientnotetype - TAG
|
||
none
|
||
|
||
DEPRECATED - aclientnotifyevent -
|
||
none
|
||
|
||
aclientservicerequest
|
||
aworkorderitem
|
||
|
||
DEPRECATED - acontact -
|
||
acontacttitle
|
||
|
||
Xacontract
|
||
aregion - TAG
|
||
|
||
Xacontractrate
|
||
acontract
|
||
arate
|
||
|
||
X adispatchzone - TAG
|
||
aregion - TAG
|
||
|
||
DEPRECATED / HANDLED AUTOMATICALLY BY IMPORT afile
|
||
none
|
||
|
||
xaglobal
|
||
ataxcode
|
||
aworkorder
|
||
aworkorderstatus
|
||
|
||
xaglobalex
|
||
none
|
||
|
||
xaheadoffice
|
||
aclientgroup - tag
|
||
acontract
|
||
|
||
aintegration
|
||
none
|
||
|
||
aintegrationmap
|
||
aintegration
|
||
|
||
Xaloanitem
|
||
aregion - TAG
|
||
aworkorderitemloan
|
||
|
||
xamemo
|
||
auser
|
||
|
||
DEPRECATED - anotify*
|
||
lots of tables, but it's all obsolete and won't be ported
|
||
|
||
HANDLED BY IMPORT - aobjectcustomfield
|
||
(defines custom fields, is part of base import already, nothing special required here)
|
||
|
||
apart
|
||
apartassembly
|
||
apartcategory - TAG
|
||
aunitofmeasure
|
||
avendor
|
||
|
||
apartassembly
|
||
none
|
||
|
||
apartbywarehouseinventory
|
||
apart
|
||
apartwarehouse
|
||
|
||
apartcategory - TAG
|
||
none
|
||
|
||
apartinventoryadjustment
|
||
none
|
||
|
||
apartinventoryadjustmentitem
|
||
apart
|
||
apartinventoryadjustment
|
||
apartwarehouse
|
||
|
||
apartserial
|
||
apartinventoryadjustmentitem
|
||
apurchaseorderreceiptitem
|
||
aworkorderitempart
|
||
|
||
apartwarehouse
|
||
aregion - TAG
|
||
|
||
xapriority
|
||
none
|
||
|
||
xaproject
|
||
aregion - TAG
|
||
auser
|
||
|
||
apurchaseorder
|
||
aproject
|
||
avendor
|
||
|
||
apurchaseorderitem
|
||
apart
|
||
apartwarehouse
|
||
apurchaseorder
|
||
ataxcode
|
||
aworkorderitempartrequest
|
||
|
||
apurchaseorderreceipt
|
||
avendor
|
||
|
||
apurchaseorderreceiptitem
|
||
apart
|
||
apurchaseorder
|
||
apurchaseorderitem
|
||
apurchaseorderreceipt
|
||
|
||
xarate
|
||
aclientgroup - tag
|
||
arateunitchargedescription - DEPRECATED per case 3432
|
||
aregion - TAG
|
||
|
||
DEPRECATED case 3432 - arateunitchargedescription
|
||
none
|
||
|
||
xaregion - TAG
|
||
aworkorderstatus ?! WTF?
|
||
|
||
xregionnotifystat ?wtf is this?
|
||
aregion - TAG
|
||
|
||
REPLACED NEW FORMAT - areport
|
||
aregion - TAG
|
||
|
||
xaScheduleableUserGroup - TAG
|
||
none
|
||
|
||
xascheduleableusergroupuser
|
||
aScheduleableUserGroup - TAG
|
||
auser
|
||
|
||
aschedulemarker (now "Reminder")
|
||
none ?must be at least user in there...weird
|
||
|
||
DEPRECATED - asecuritygroup (nope)
|
||
none
|
||
|
||
xaservicebank
|
||
none
|
||
|
||
atask
|
||
none
|
||
|
||
ataskgroup
|
||
none
|
||
|
||
ataskgrouptask
|
||
atask
|
||
ataskgroup
|
||
|
||
xataxcode
|
||
none
|
||
|
||
aui* (these are all v7 UI saved settings that are not applicable to v8)
|
||
|
||
xaunit
|
||
aclient
|
||
aunitmodel
|
||
|
||
xaunitmeterreading
|
||
aworkorderitem
|
||
|
||
xaunitmodel
|
||
aunitmodelcategory - TAG
|
||
avendor
|
||
|
||
xaunitmodelcategory - TAG
|
||
none
|
||
|
||
DEPRECATED NO MORE - aunitofmeasure
|
||
none
|
||
|
||
xaunitservicetype - TAG
|
||
none
|
||
|
||
xauser
|
||
adispatchzone - TAG
|
||
aheadoffice
|
||
apartwarehouse
|
||
asecuritygroup
|
||
avendor
|
||
aworkorder
|
||
|
||
xausercertifcation* (these are now tags and already rolled into v8 migrate tool)
|
||
|
||
xausermru DEPRECATED
|
||
xauserright DEPRECATED
|
||
|
||
xauserskill* (now tags and already accounted for in v8 migrate)
|
||
|
||
xavendor
|
||
none
|
||
|
||
xawikipage* (already accounted for in v8 migrate code, object by object will export)
|
||
|
||
aworkorder (new structure, some of these are no longer joined due to seperation of wo types in v8)
|
||
aproject
|
||
aregion - TAG
|
||
aworkordercategory - TAG
|
||
aworkorderpreventivemaintenance
|
||
aworkorderquote
|
||
|
||
xaworkordercategory - TAG
|
||
none
|
||
|
||
aworkorderitem
|
||
apriority
|
||
aunit
|
||
aunitservicetype - TAG
|
||
aworkorderitemtype - TAG
|
||
aworkorderstatus
|
||
|
||
aworkorderitemlabor
|
||
arate
|
||
aservicebank
|
||
ataxcode
|
||
aworkorderitem
|
||
|
||
aworkorderitemloan
|
||
aloanitem
|
||
ataxcode
|
||
aworkorderitem
|
||
|
||
aworkorderitemmiscexpense
|
||
ataxcode
|
||
aworkorderitem
|
||
|
||
aworkorderitemoutsideservice
|
||
avendor
|
||
aworkorderitem
|
||
|
||
aworkorderitempart
|
||
apart
|
||
apartserial
|
||
apartwarehouse
|
||
ataxcode
|
||
aworkorderitem
|
||
|
||
aworkorderitempartrequest
|
||
apart
|
||
apartwarehouse
|
||
apurchaseorderitem
|
||
aworkorderitem
|
||
|
||
aworkorderitemscheduleduser
|
||
arate
|
||
aworkorderitem
|
||
|
||
aworkorderitemtask
|
||
atask
|
||
ataskgroup
|
||
aworkorderitem
|
||
|
||
aworkorderitemtravel
|
||
arate
|
||
aservicebank
|
||
ataxcode
|
||
aworkorderitem
|
||
|
||
xaworkorderitemtype - TAG
|
||
none
|
||
|
||
aworkorderpreventivemaintenance
|
||
aworkorder
|
||
aworkorderstatus
|
||
|
||
aworkorderquote
|
||
aworkorder
|
||
|
||
aworkorderservice
|
||
aworkorderpreventivemaintenance
|
||
aworkorderstatus
|
||
|
||
xaworkorderstatus
|
||
none
|
||
|
||
|
||
|
||
|
||
|
||
------------------------------------------------------------------------------------------
|
||
|
||
POST "REALITY" OR IN PARALLEL "REALITY" related items:
|
||
|
||
todo: CYPRESS TEST DATE / TIME / DATE_TIME controls switched back to vuetify ones
|
||
widget entry form test rewrite
|
||
https://github.com/cypress-io/cypress/issues/7404
|
||
https://github.com/vuetifyjs/vuetify/issues/10988#issuecomment-726089949
|
||
|
||
TODO: //MIGRATE_OUTSTANDING comment tag
|
||
search for this comment tag as it will contain items that could not be done until other items were migrated first
|
||
The tag will contain the description for each
|
||
|
||
todo: Schedule form
|
||
- This one is big but requires the data to be there so as soon as implement enough things that are scheduleable then do this
|
||
- printing / reporting schedule? Do-able?
|
||
- https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/729
|
||
|
||
|
||
todo: can beta test at this point
|
||
See below, specific ideas about public beta test (User accounts not seperate installs maybe)
|
||
post installer, enlist trial users get feedback, don't get too down when they shit all over it as they will undoubtedly :)
|
||
remember, it's for the new customers primarily, new customers = new $$
|
||
|
||
todo: Document in user manual all form controls with instruction on how to use the various controls etc
|
||
- "Anatomy of a AyaNova Form"
|
||
|
||
WORKORDER UI
|
||
todo: Investigate Workorder structure and datagrid see case https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/3768
|
||
Likely that workorder grids inside will not be full blown custom datagrid I wrote but just a vanilla v-data-table control since there is likely no need for the full customization shit
|
||
todo: workorder UI layout stuff (TTM!! Don't re-invent the wheel!)
|
||
There's been a lot of ideas about wo floating around and considered, but at the end of the day what I have works so maybe try to meld
|
||
into what I have the new concepts and see what comes out. Support a rich wo UI on big screens and scroll around UI on phone maybe.
|
||
some notes:
|
||
Workorder UI good ideas here: https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/3475
|
||
Basically (based on RI) it boils down to don't make the user go up to the workorder item level when they can go sideways directly to an alternate child of woitem
|
||
i.e. going from parts to labor shouldn't require going up a level
|
||
All workorder in one document and just really really tall? (people bitch about RI requiring too many navigation steps to get to shit)
|
||
Header and items in one document then bottom in seperate pages?
|
||
Is it going to be far easier to code this bitch if I have all the workorder data at hand or..?
|
||
How does WBI handle all this because it's kind of the poster child for RAVEN
|
||
Workorder is one of those things that may require different views for phone and tablet and laptop etc
|
||
Kind of like two views, tiny phone and anything larger
|
||
On a PC people will want and expect it to look as much like v7 workorder as possible, maybe that's still a valid layout
|
||
just tweaked to work better as a web app a bit but theoretically I could almost duplicate that layout with the tools I have
|
||
|
||
|
||
Consider UI in this as well, will need to decide at least what is visible when
|
||
Workorder UI good ideas here: https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/3475
|
||
How to add items, like new woitem?
|
||
send to server get back new object?
|
||
lots of biz rules and stuff need to happen, want to minimize load at client
|
||
but lots of data back and forth is not ideal
|
||
maybe request a woitem and get it back?
|
||
what exactly needs to be processed in the wo when items are added / removed?
|
||
math / totalling?
|
||
simple calcs sb client doable
|
||
this will drive what has to happen.
|
||
Need to go over all wo features and factor them into this decision properly
|
||
The whole idea of a completed section of a wo and stuff, is that dropped due to TTM or still viable?
|
||
maybe can pick out the best new features of that which can be integrated into existing design rather than re-inventing the wheel
|
||
Here is an overview: https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/3412
|
||
How best to be able to service LoanUnits on a workorder? [UPDATE: added shadow units feature]
|
||
Just make them Units with extra properties exposed if type of loaner?
|
||
This seems simplest, but what will it effect?
|
||
Hard to make them serviceable if they are an alternate table of source for what's being repaired as that breaks a lot of other code or adds exceptions
|
||
Customer is then who exactly because it's fundamental to a lot of wo functionality?
|
||
from a biz perspective isn't it like you are your own customer when you service your own equipment that you loan out?
|
||
Does Serial field need to be numeric, could it be text instead?
|
||
prompted by case 3428 saying that it's hard to deal with constant conversion to text for UI etc
|
||
plus, I'm thinking it opens door to textual scheme like appending -A or whatever to a wo.
|
||
or, is that a display issue?
|
||
Calling something "serial" implies it's unique but it isn't, maybe I should call it "number" instead or "ID" or something?
|
||
INFO: did a test workorder with ALL fields filled out heavily and one woitem, exported from db entire graph based on detailed report so every line was every item repeated
|
||
still only 84kb and it's a lot bigger than any typical wo in v8 would be as it will be far more efficient without having to repeat lines flatly
|
||
so I think size of object is a non-issue really from a practical standpoint.
|
||
|
||
|
||
UI
|
||
|
||
idea: UI reflects tentativeness state of object:
|
||
The UI doesn't imply something is done by changing it fully until the save is completed.
|
||
This serves two purposes:
|
||
1) user knows at a glance what isn't saved yet and will know it's waiting for save clearly, hopefully leading them to save more often,
|
||
2) client doesn't need to track invisible shit behind the scenes, can more easily do patch updates right off UI source
|
||
|
||
e.g.:
|
||
if deleted a row in parts, that row doesn't disappear but rather shows crossed out, maybe grayed out but still there until save to indicate it's tentative status
|
||
if added a row, shows green or something or bold or asterisk, (can style with css based on state) until saved
|
||
problems:
|
||
how to handle regular fields that are changed (that's a lot of field data to track for changes)?
|
||
Maybe client keeps a virgin copy of the original wo for comparison
|
||
periodically does a compare and flags differences on updates?
|
||
(this would also help to serve as an Undo maybe?)
|
||
|
||
|
||
|
||
todo: Documentation POST "REALITY"
|
||
will already have placeholders from above
|
||
Need to think this through carefully
|
||
Need to get the critical bits in for onboarding and importing so people can get going
|
||
Most important stuff is anything non-obvious
|
||
Seems pointless to have one doc per form that just says "The name field is the name and must be unique"
|
||
maybe have that kind of stuff in the form basics and then have a doc per OBJECT instead with anything unique or interesting about the object
|
||
(and each object form has a link to formbasics so can link to the object form from UI and they get both)
|
||
Parts of it can be done post-release for sure
|
||
|
||
|
||
|
||
todo: ONGOING search for memory leaks
|
||
The 7 times system seems to work the best
|
||
Excercise item a few times to settle it in memory, take heap snapshot, force gc, take total of 3 heap snapshots forcing gc each times
|
||
Excercise item 7 times exactly, take 3 more heap snapshots forcing gc before each one
|
||
Compare snapshot 6 to snapshot 3 look for Delta 7 times items to find leak
|
||
https://developers.google.com/web/tools/chrome-devtools/memory-problems
|
||
https://nolanlawson.com/2020/02/19/fixing-memory-leaks-in-web-applications/
|
||
|
||
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
@@@@@@@@@@@@@@@ ROADMAP STAGE 7 - EXTENSIONS (was plugins)
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
|
||
Step 1: get the current active license count for all extensions so I know what i'm dealing with here
|
||
Step 2: which extensions in which order and some can be left off entirely?
|
||
|
||
Plan the order of criticality for extensions
|
||
ACCOUNTING is obviously the first and foremost one and MUST be there for a lot of people to take up
|
||
MUST be done in a way to support other alternative accounting apps that are coming around now like freshbooks or whatever it's called that Joyce is using now
|
||
probably going to need a "trick" of some kind to interface with desktop accounting
|
||
i.e. a local windows app that uses the api and just copy over the qbi code
|
||
or a local server that has it's own web interface
|
||
or regular raven UI but the accounting section interfaces with a local server for local desktop qbi stuff and
|
||
the raven server interfaces with QBOnline for the QBOI stuff
|
||
|
||
based on sales, how many subscribed now
|
||
which ones are porting and which are not
|
||
Implement in order or priority
|
||
Fuck peachtree?
|
||
probably not, need to check again our install count of extensions
|
||
|
||
|
||
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
@@@@@@@@@@@@@@@ ROADMAP STAGE 8 - ONLINE EVALUATION ABILITY / INSTALLER, LICENSING, ROCKFISH SUPPORT FOR RAVEN
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
|
||
todo: setup for automated trial testing ability so can just link users
|
||
Maybe, rather than having seperate servers for testing, have it instead generate a User account on the fly for each user who wants to trial
|
||
Automatically re-create the data on a cycle of some kind
|
||
Needs warning message about being a shared instance of AyaNova so be careful what you type and also you may see things other people typed that I have no control over
|
||
|
||
todo: WINDOWS INSTALLER
|
||
Runner harness wrapper thing?
|
||
even if windows only
|
||
it could modify config since it's outside the server
|
||
check for Postgres server extant and if not automatically start the standalone postgres instance
|
||
manage postgres start and stop and configuration changes, sit in tray, run AyaNova server from there?
|
||
|
||
easy way to select command line params without resorting to editing text files for end user
|
||
initially it's an installation option, but then need to edit after the fact
|
||
Quick check of installers available still and is it still kosher to keep using INNO setup or is something better, more supported by windows etc?
|
||
Wix if want MSI (some say that's desireable)
|
||
INNO is still relevant
|
||
I don't need hardly any requirements that can't just be copy or unzip deployed so maybe don't even need an installer for now?
|
||
(zip distribution is going to be problematic with Windows file protection shit)
|
||
https://docs.microsoft.com/en-us/dotnet/core/deploying/
|
||
https://docs.microsoft.com/en-us/dotnet/core/rid-catalog
|
||
|
||
|
||
Completely packaged and installable. REady for users to install as a test as I iterate stage 7 below
|
||
All the stuff needed for someone to run it as a test without the real objects yet.
|
||
Some kind of expiring license so they can't just keep using it as fucked as it may be some might do that
|
||
I want short targetted testing only, not someone downloading and trying it out a month later, that's useless for us
|
||
This needs to be focused on what I need to get from people about testing
|
||
|
||
|
||
todo: LINUX INSTALLER
|
||
Linux users don't mind doing the manual config thing as much, they're used to it and it could just be a shell file anyway
|
||
So mainly this would be a documentation steps to install type issue
|
||
|
||
|
||
todo: DOCUMENT DOCKER
|
||
Present dockerfile maybe for docker installation with FILES folder pre-ready to build / run
|
||
Whatever docker needs
|
||
Or maybe private registry with docker images on our servers somewhere
|
||
|
||
todo: rockfish, can't do purchase for raven or view it I think
|
||
Test a whole sales process from eval to purchase and make it work
|
||
todo: rockfish, upgrade to latest bootstrap, out of date Currently
|
||
todo: rockfish, trial license fetched On date not updating? (not showing in UI)
|
||
|
||
todo: Joyce rockfish notes:
|
||
Licensing:
|
||
noticed that the field "Fetched on" is NEVER updated.
|
||
is it much to be able to see the TIME as well as the DATE, when "Requested" and when "Processed"?
|
||
There are drop down selections NEW, APPROVED, REJECTED for the (already generated) listed keys. But can not actually save to a different Status. What is the purpose of the drop down options if can not select?
|
||
|
||
|
||
|
||
|
||
todo: Discourse bootstrapping install
|
||
look over, get ideas make case steal ideas profit FTW$
|
||
https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md
|
||
//here is their standalone config yml definition for DOCKER
|
||
https://github.com/discourse/discourse_docker/blob/master/samples/standalone.yml
|
||
|
||
|
||
|
||
todo: back and forward buttons when running without browser controls in application mode?
|
||
- wait and see on this one, as it will be likely outside of any particular form so not something to be baked in early necessarily
|
||
|
||
todo: GUIDED TOUR
|
||
- This is an important feature and at least get a basic one in there for starters and initial release
|
||
- This is a replacement for the tutorials and videos in v7 a
|
||
- Need to add that auto-pilot thingy that allows for guided tours in HTML apps
|
||
- Specifically it should at least have an ONBOARDING walk through of how to move around, enter data, get help etc. Not feature specific but usage specfic.
|
||
- Later I'll add feature specfic tutorials like how to make a workorder etc
|
||
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
@@@@@@@@@@@@@@@ ROADMAP STAGE 9 - RELEASE
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
|
||
todo: ARCHIVE ALL DEPENDENCIES
|
||
Get all code for all 3rd party libs used for front and back of AyaNova 8
|
||
Need to store that in an archive somewhere just in case
|
||
Needs to be done with each release so can go back to that if necessary
|
||
Going to be big, maybe archived to all storage drives locally and burned to a dvd?
|
||
If check into the repo it will be an issue probably but you never know
|
||
|
||
TODO: CSP Policy that should be enabled at server?
|
||
I had to add per this: https://docs.telerik.com/kendo-ui/troubleshoot/content-security-policy#content-security-policy
|
||
to my csp because I kept getting errors in client end debug console mentioning csp issues
|
||
this seemed to come after I updated the client build process to do a legacy and modern build but I'm not 100% sure about that
|
||
|
||
Assuming has passed all testing
|
||
Plan pricing and sales strategy
|
||
What to do with licenses for v7 people
|
||
Another payment processor?
|
||
support bitcoin if possible as well
|
||
|
||
|
||
DONATE
|
||
Send a tip / buy a coffee link to the graphic designer who made the rabbit logo
|
||
https://pixabay.com/vectors/bunny-rabbit-wrench-repairs-154508/
|
||
coffee button top right
|
||
if I use it in release I should at least send them the small amount they get tipped
|
||
|
||
Send a tip / donate to teh favicon generator guy
|
||
https://realfavicongenerator.net/
|
||
I broke it at one point by bringing down the site while it was checking ... oops.
|
||
Used it several times and should donate
|
||
|
||
|
||
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
@@@@@@@@@@@@@@@ ROADMAP STAGE 10 - ROCKFISH / HOSTING BACKEND SELF SERVER READINESS
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
DO server allocation, rockfish revamp to drive this part (or maybe it's an alternate app)
|
||
https://blog.digitalocean.com/its-all-about-the-bandwidth-why-many-network-intensive-services-select-digitalocean-as-their-cloud/?utm_medium=email&utm_source=do_newsletter&utm_campaign=04292020
|
||
https://www.youtube.com/watch?v=zZVoo5AbANI
|
||
|
||
|
||
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
@@@@@@@@@@@@@@@ ROADMAP STAGE 11 - RELEASE SELF SERVE / HOSTING
|
||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||
Fall of 2021 hopefully
|
||
links on website for sign up
|
||
marketing can begin in earnest
|
||
|
||
NOTE: HOSTING cases are all moved to priority 2 and most have "HOSTING" in the title tags
|
||
|
||
todo: Administration - Account
|
||
Down the road will need an Account page for seeing their account status in rental SAAS situation
|
||
Nothing to do here, it's an obvious one, just delete this later, it's to percolate in brain a bit
|
||
maybe under license
|
||
|
||
PLAIN TEXT EMAILS / ONBOARDING
|
||
https://blog.palabra.io/great-onboarding-plain-text
|
||
|
||
MARKETING
|
||
Analytics alternatives to Google:
|
||
https://news.ycombinator.com/item?id=24198329
|
||
|
||
Also very nice screen shot effect:
|
||
https://umami.is/
|
||
Created by:
|
||
|
||
dom96 2 hours ago [–]
|
||
|
||
Nice! Question for you, how did you make that nice 3D image on the front page with various screenshots overlaid over each other? :)
|
||
|
||
reply
|
||
|
||
|
||
mcao 2 hours ago [–]
|
||
|
||
It's all done in Photoshop. Just take screenshots, then transform, rotate, distort them to look flat. Then add some drop shadows for a 3d look.
|
||
|
||
reply
|
||
|
||
|
||
|
||
MUSIC TO ADD TO COLLECTION
|
||
BOC - cities on flame
|
||
MID CENTURY MODERN TUNES - https://www.allmusic.com/album/ultra-lounge-vol-14-bossa-novaville-mw0000024024
|
||
|
||
|
||
|
||
|
||
|
||
BUILD CHANGES OF NOTE
|
||
|
||
Notes:
|
||
Tax rates and decimal places:
|
||
Many places globally have 3 decimal place tax rates, even in the US https://taxfoundation.org/2020-sales-taxes/
|
||
I saw online developers asking how to set to 4 decimals for certain products so there is also 4 decimal out there
|
||
At the bac end I define tax rates in the db DECIMAL(8,5) that's 3 digits to left and 5 to right but at the front end I set it to show 3 but that can be changed if necessary
|
||
without affecting back end data
|
||
|
||
build 105
|
||
- direct report url now works again properly. Used by notification to send links to reports and possible future other links to provide an url that opens in teh AyaNova client directly to viewing a report, so that the url [clienturl]/viewreport?oid=1&rid=1 for example will open report id 1 with object id 1
|
||
- Can now hide columns that are filtered or sorted without error in data tables; Data Table column selector button will change to larger and accented when this is the case and the column selector form will highlight these hidden columns that affect the view with raised elevation, accent color and filter/sort icon (both show, there is no distinction which type of way it's affecting)
|
||
- fixed
|
||
Search form object types selection need enum list variant of object types to only show for roles allowed then change search form picklist to use that variant
|
||
Notification events list (notify subscription) needs variant that controls what they have role access to
|
||
memo to dropdown list shows all users for selection then after selecting one shows only that selected when you next drop down, should show all users still like first time.
|
||
memo click on reply or forward should put cursor into top of edit message control (notes)
|
||
memo read now flags correctly
|
||
taxcode form has default of .05 in taxa, change to zero
|
||
Default warehouse try to enter a tag bombs with error
|
||
PartInventory data table errors out when click on column selector
|
||
Part inventory list remove description field
|
||
PO form Hide serial field until an ID is set (i.e. don't show 0)
|
||
PO Form serial field read only unless superuser
|
||
PO item Receive button confusing as it receives all, change text to receive all
|
||
PO item table to optionally show part Name field and show hide via customize form
|
||
PO item not showing taxaviz and taxbviz
|
||
Part inventory list also show on order and on order committed
|
||
Ability to remove (optional) data table filter set internally when viewing from objects own menu for partinventory, inventorytransactions, reviews, servicebank
|
||
(was: **Part inventory list view will NOT show all parts if previously selected to view the actual part inventory for a single part.)
|
||
FIX: Added UI elements at top of grid to remove single object filter (where applicable) and display which object(s) data is displaying consistently
|
||
Part inventory adjustment adding from list that is already restricted to one part [OR WAREHOUSE] only (coming from part [OR WAREHOUSE] form menu) should pre-select the part [OR WAREHOUSE] in the new adjustment form
|
||
Inventory limited role is presented delete button in part assembly list, should only be able to view
|
||
Accounting role: if select Contacts listview, get error "! Not authorized"
|
||
Taxes won't let me change an existing Name if previously selected on any other record.
|
||
Taxes won't let me change the Active status if previously selected on any other record.
|
||
Unit charge description should offer auto suggest from prior entries to save typing
|
||
|
||
- not changed
|
||
Tag extension should have tag picker instead of empty field in cases where you are picking from existing tags
|
||
** It would not work with the system in place. Tag picker control is designed for multiple tags,
|
||
tags extension system is designed to replace / remove a single tag at a time by design, so wouldn't save any typing by user anyway as would be restricted to one tag
|
||
and would need extensive changes to working code to implement
|
||
Tag extension to report results of operation? i.e. how many tags deleted etc
|
||
** Not practical at this time / have made a case to look into down the road, would require extensive changes to working code at both server and client
|
||
Tag extension or any extension refresh main data table it was run from after operation (so can see results) automatically
|
||
** looked into and realized could cause issues forcing a refresh when the user doesn't want it necessarily if they are picking and choosing records to work with in extension more than once
|