PHM module is responsible mostly for car fueling, petrol stations and related things.
Common terms:
Identity makes the transactions - PhmTransaction table. Important are
Synchronization: fuel stations, vehicles, chip numbers, fuel station FSCodes.
Vehicles are synchronized mostly from customers external data e.g. SAP for SD customer into some tables. Best usage for search vehicles is view PHMIdentityVehicleView. Column IdentityTextValue is value external customer car identifier for PHM. Same for Drivers with PHMIdentityDriverView.
Transaction processing:
PHMTransaction table mostly from GSI software (our software) via KupsonManager. Some times from excel etc.TransactionManager into transaction data store - PHMTransactionDataStore table. This is done via service thread PHMTransaction.PHMTransactionDataStore.
When some data from PHMTransactionDataStore are deleted, these can be again recalculated via PHMTransaction service with TransactionManager. See bug for more information.
Filling transactions
On some customers with AVPs, method KupsonManager.SynchronizeAllDevices - there is both direction synchronization:
PHMTransactionTime intervals for synchronizations are newly defined in db - PR
Processing with TransactionManager
PHMTransaction process these amount in loopPHMNozzleHistory table
Process identities in TransactionManager
Identity with chip number must be determined if is for vehicle, driver or external identy. There are view
PHMIdentityVehicleView, PHMIdentityDriverView, PHMIdentityStandAloneView which are helpful for find
which is source of identity of the transaction.
Photos
Transactions has photos made by some cameras on fuel stations. These photos are synced via rsync to APL_Service server (name in Terminals) in shared directory \\192.168.148.15\avp\AGROFERT\201801\overphoto\cam_R691_8.jpg. These are then synced with some service into db - table PHMTransactionPhoto.