Skip to content

VS Labour Sync Flow

---
config:
    theme: redux
---
graph TD
    Autoline -- Autoline Labour Data --> QlikLoad 
    subgraph Source Data Extraction
        QlikLoad@{shape: circle, label: "Qlik Loads Data"} -- Labour Data in Memory --> 
        QlikStore@{shape: circle, label: "Qlik Saves Data"} -- Labour Data (SOLabordatas_Full_{dealername}.csv) -->
        QlikServer@{shape: lin-rect, label: "Qlik Server [azftp/DealerInvoiceData/]"} 
    end

    subgraph Sync Files on Azure
        QlikServer -- VTModelRecords.csv on Qlik -->
        AzureSync@{shape: circle, label: "Azure Sync Process \n (qlik-sync)"} -- SOLabordatas_Full_{dealername}.csv On Azure -->
        AzureStorage@{shape: lin-rect, label: "Azure File Share [tqiplatformac65/qlik-csv/CompanyInvoiceData/]"}
    end

    subgraph Sync Data Function
        AzureStorage -- New (source) SOLabordatas_Full_{dealername}.csv --> 
        CompareCSVFiles@{shape: circle, label: "Compare Source and \n Destination CSV files \n tiq-sync-data-functions/\nSyncInvoiceLaborLine_Full_{dealername}"} 
        DestinationCSVFile@{shape: lin-rect, label: "Azure File Share [tqiplatformac65/csv-sync-destination/OrderLaborLine ???/]"} 
            -- Existing (destination) SOLabordatas_Full_{dealername}.csv --> 
        CompareCSVFiles -- The Difference of Labour Data in Memory -->
        SyncToCosmos@{shape: circle, label: "Sync to \n Cosmos DB"} -- Labor Records -->
        VehicleRecordInCompanyDataInCosmos@{shape: lin-rect, label: "Cosmos DB \n [CompanyData/Vehicles(ItemType=OrderLaborLine)]"} -->
        CheckSyncStatus@{shape: circle, label: "Check Cosmos \n Sync Status"} -- True -->
        OverwriteDestinationCSVFile@{shape: circle, label: "Override \n Destination \n CSV File"}
        OverwriteDestinationCSVFile -- SOLabordatas_Full_{dealername}.csv --> DestinationCSVFile
        CompareCSVFiles -- New (source) SOLabordatas_Full_{dealername}.csv --> OverwriteDestinationCSVFile
    end