59 lines
4.0 KiB
Markdown
59 lines
4.0 KiB
Markdown
pre-requisites
|
|
* setup postgres db with a username and password and database
|
|
|
|
setup
|
|
* `setup_sql/schema.sql` setup the application tables
|
|
* create a table of data to forecast
|
|
* `setup_sql/target_info.sql` to populate the meta table (edit table name)
|
|
* fill out the `target_meta` table
|
|
* `setup_sql/build_maste_tables.sql` to create master data tables from forecast data
|
|
* `./routes/baseline/generate_route_sql.sh` to create the baseline sql used by the /baseline route
|
|
|
|
| schema | tname | cname | opos | func | fkey | fcol | dtype | appcol | pretty |
|
|
| ------- | ------- | -------------- | ---- | ------------ | ------------ | -------------- | ------- | ------------ | ------ |
|
|
| fc | live | fb_cst_loc | 91 | cost | | fb_cst_loc | numeric | | |
|
|
| fc | live | ship_cust | 36 | scust | scust | ship_cust | text | | |
|
|
| fc | live | rdate | 98 | rdate | rdate | drange | date | | |
|
|
| fc | live | geo | 42 | scust | | geo | text | customer | |
|
|
| fc | live | part | 54 | item | item | part | text | item | |
|
|
| fc | live | odate | 96 | odate | odate | drange | date | order_date | |
|
|
| fc | live | sdate | 100 | sdate | sdate | sdate | date | ship_date | |
|
|
| fc | live | oseas | 97 | odate | | ssyr | integer | | |
|
|
| fc | live | calc_status | 94 | order_status | order_status | calc_status | text | order_status | |
|
|
| fc | live | rseas | 99 | rdate | | ssyr | integer | | |
|
|
| fc | live | sseas | 101 | sdate | | ssyr | integer | | |
|
|
| | | | | | | | | version | |
|
|
| | | | | | | | | iter | |
|
|
| | | | | | | | | logid | |
|
|
|
|
* func:
|
|
* a foreign key and table is setup (except date types)
|
|
* baseline function does a group-by to compact data for any func/appcol and value types are aggregated
|
|
* fkey:
|
|
* primary key of assoicated data and foreign key basis
|
|
* for date types no foreign key is setup, but dynamic table joins use the fkey field to join on
|
|
* fcol: associated field from the master data table if it is different (oseas would refer to ssyr in fc.perd)
|
|
* pretty: display column name (user friendly)
|
|
* appcol: flag columns that will be needed by the application
|
|
* order_date
|
|
* ship_date
|
|
* customer
|
|
* item
|
|
* order_stats
|
|
* units
|
|
* cost
|
|
* value
|
|
* version (added if missing)
|
|
* iter (added if missing)
|
|
* logid (added if missing)
|
|
|
|
issues
|
|
- [ ] baseline request json is not depostiing correctly into the sql
|
|
- [ ] what if you create a func table but some of the values are null? (orders without quotes)
|
|
- [x] what if you want certain things like invoice numbers included in the baseline, is a func table necesary? no, just leave fkey null and no table will be setup
|
|
- [ ] baseline needs to populate all columns in sequential order like the scale route
|
|
- [ ] what if there is more than one table in fc.target_meta
|
|
- [x] validate the ability to join to associated date tables, for example order season that needs incremented
|
|
- [ ] there is not currently any initial grouping to limit excess data from all the document# scenarios
|
|
- [ ] how to handle a target value adjustment, which currency is it in?
|