- Use Git Bash
cd ../../Development
git clone https://github.com/northriverboats/pickle-boats-rec.git
cd pickle-boats-rec
- Use windows shell
cd \Development\pickle-boats-rec
\Python37\python -m venv .venv
.venv\Scripts\activate
python -m pip install pip --upgrade
- Download
PyQt4-4.11.4-cp37-cp37m-win_amd64.whl
from https://www.lfd.uci.edu/~gohlke/pythonlibs/ pip install <path-to-folder>\PyQt4-4.11.4-cp37-cp37m-win_amd64.whl
pip install -r requirements.txt
- Remember to Create New Branch Before Doing Any Work
- Ues QT Creator
- '.venv\Lib\site-packages\PyQt4\Designer.exe`
- MainWindow.ui
.venv\Lib\site-packages\PyQt4\pyuic4 MainWindow.ui -o MainWindow.py
- PreferencesDialog.ui
.venv\Lib\site-packages\PyQt4\pyuic4 PreferencesDialog.ui -o PreferencesDialog.py
.venv\Scripts\pyinstaller.exe --onefile --windowed --icon options.ico --name "Pickle Rec Boats Folder" "pickle-boats-rec.spec" main.py
- A sheet is vertically divided into top, bottom and sections
- top is absolutely positioned at row 1.
- section
start
is found by looking in column A/1 for all cells that have the valueQTY
. - section
end
is found by looking in column J/10 for all cells that have the valueSUBTOTAL
. - bottom is computed as
max(end)+ 5
- A sheet horizontally divided into an absolute positioned and relative positioned
boatSizes
.- the leftmost column A/1 is absolutely positioned.
boatSizes
is the text of any cell that is an integer value as determined by.isidigit()
.- the column position of
boatSizes
is computed by J/11 with11 + (4 * i)
withi
being the current index intoenumerate(boatSizes)
.
- The file
fields.py
holds the different bands on the page. Each band has entries for individual values that will be captured- name of the dictionary entry we are saving for that value
- column either absolute or relative of the value to be captured
- row either absolute or relative of the value to be captured
- default a default value such as "0", "0.0" or "" in case the cell is empty so nulls are not being stored.
- Non Section bands are processed once
topSection
has absolute columns and absolute rowscostSummary
has columns found calculated by 11 + 4 * index intoboatSizes
and absolute rows.bottomSection
has absolute columns and rows that are offset frommax(end) + 5
- Section bands are processed once for each item in the
section[]
list.startSections
has absolute columns and rows offset fromstart[i]
and occur before thepartSection
in each section.startSectionsSize
has columns found calculated by 11 + 4 * index intoboatSizes
and rows offset fromstart[i]
and occur before thepartSection
in each section.endSections
has columns found calculated by 11 + 4 * index intoboatSizes
and rows offset fromend[i]
and occur after thepartSection
in each section.partSection
needs to be divided it has both absolute columns at the start andboatSizes[]
calculated columns.