Parts Stock Sync Flow
---
config:
theme: redux
title: TIQ Parts Stock
---
graph TD
Autoline -- Autoline Parts Stock Data --> QlikLoad
subgraph Source Data Extraction
QlikLoad@{shape: circle, label: "Qlik Loads Data"} -- Parts Stock Data in Memory -->
QlikStore@{shape: circle, label: "Qlik Saves Data"} -- Parts Stock Data CSV -->
QlikServer@{shape: lin-rect, label: "Qlik Server (azftp/Stock/[Basra|KRG].csv)"}
end
subgraph Sync Files on Azure
QlikServer -- Parts Stock on Qlik -->
AzureSync@{shape: circle, label: "Azure Sync Process \n (qlik-sync)"} -- Parts Stock On Azure -->
AzureStorage@{shape: lin-rect, label: "Azure File Share (tqiplatformac65/qlik-csv/Stock/[Basra|KRG].csv)"}
end
subgraph Sync Data Function
AzureStorage -- New (source) Parts Stock -->
CompareCSVFiles@{shape: circle, label: "Compare Source and Destination CSV files \n (tiq-sync-data-functions/\n SyncPartStock_[Basra|KRG]_Timer)"}
DestinationCSVFile@{shape: lin-rect, label: "Azure File Share \n (tqiplatformac65/csv-sync/Stock/[Basra|KRG].csv)"}
-- Updated Existing (destination) Parts Stock Data -->
CompareCSVFiles -- The Difference of Parts Stock Data in Memory -->
SyncToCosmos@{shape: circle, label: "Sync to \n Cosmos DB"} -- Parts Stock Records -->
PartsRecordInCompanyDataInCosmos@{shape: lin-rect, label: "Cosmos DB \n [CompanyData/Parts]"} -->
CheckSyncStatus@{shape: circle, label: "Check Cosmos \n Sync Status"} -- True -->
OverwriteDestinationCSVFile@{shape: circle, label: "Override \n Destination \n CSV File"}
OverwriteDestinationCSVFile -- csv --> DestinationCSVFile
CompareCSVFiles -- New (source) csv --> OverwriteDestinationCSVFile
end