Francais Francais English English

RETRIEVE A LIST OF FORMULAS

3 functions are required to complete the transaction :

Usage Example

listeFormuleAImporter est un EXIM_automatomFormula
nNbrFormule est un entier
retourImportation est un EXIM_automatomFormulaResult

SI EXIM_connect("user","password","IDPeer") = Faux ALORS
        Info("Connection failed")
        RETOUR
FIN

nNbrFormule = FORMULA_howManyToDownload()

SI nNbrFormule <> 0 ALORS
        listeFormuleAImporter <= FORMULA_get()

        // Preparing the import return variable
        retourImportation.IDLicence = "TEST"
        POUR i = 1 _À_ TableauOccurrence(listeFormuleAImporter.Formulas)
                // Traversing the formulas to import
                // Preparing the return variable
                TableauAjouteLigne(retourImportation.importationResult)
                retourImportation.importationResult[i].formulaNumber = listeFormuleAImporter.Formulas[i].formulaNumber
                retourImportation.importationResult[i].plantCode = listeFormuleAImporter.Formulas[i].plantCode

                QUAND EXCEPTION DANS
                        // Importing the formula into the controller
                        // ...
                        // ...


                        // Everything went well
                        retourImportation.importationResult[i].importationResult = 200
                FAIRE
                        // Import Issue
                        retourImportation.importationResult[i].importationResult = 500
                        retourImportation.importationResult[i].errorDetail = "Import Problem ... place your error message here."
                FIN

        FIN

        // The import result file is sent back to BRG-LAB to complete the transaction.
        FORMULA_importResult(retourImportation)
FIN

Visual studio .net

Dim automapiClient As New automapiSOAPPortTypeClient

Dim EXIM_automatomFormula As tEXIM_automatomFormula

Dim nNbrFormule As Integer

Dim SID As Byte()

ReDim SID(20)

automapiClient.Open()

If automapiClient.EXIM_connect(SID, "user", "password", "IDPeer") Then

    nNbrFormule = automapiClient.FORMULA_howManyToDownload(SID)

    If nNbrFormule > 0 Then

        EXIM_automatomFormula = automapiClient.FORMULA_get(SID)

    End If

End If

Structure of Exchanged Data

EXIM_automatomFormula

version is string                                                                              -> Version number of the exchange file
versionDate is string                                                                  -> Date of last modification of the exchange file
Formulas is array of EXIM_formulaDescription                   -> List of formulations
Materials is array of EXIM_material                                    -> Characteristics of the materials used in the formulations
automatonCodes is array of EXIM_automatonCode                  -> Additional codes that can be customized based on the type of automation system

status_list is array of strings                                                -> Formula Status ["STUDY","CONVENIENCE","PRODUCTION"]
admixtureType_list is array of strings                                 -> List of Types of Admixtures (varie selon les configurations et les pays)
cementType_list is array of strings                                    -> List of Types of Cement (varie selon les configurations et les pays)
expositionClass_list is array of strings                               -> Exposure Class ["X0", "XC1", "XC2", "XC3", "XC4", "XS1", "XS2", "XS3", "XD1", "XD2", "XD3", "XF1", "XF2", "XF3", "XF4", "XA1", "XA2", "XA3"]
chlorideClass_list is array of strings                                 -> Chloride Class ["CL02","CL04","CL065","CL1"]
densityClass_list is array of strings                                  -> Density Class ["D10","D12","D14","D16","D18","D20","DN","DL"]
resistancyClass_list is array of strings                               -> Strength Class ["C8/10","C12/15","C16/20","C20/25","C25/30","C30/37","C35/45","C40/50","C45/55","C50/60","C55/67","C60/75","C70/85","C80/95","C90/105","C100/115"]
consistancyClass_list is array of strings                              -> ["S1","S2","S3","S4","S5","V0","V1","V2","V3","V4","C0","C1","C2","C3","F1","F2","F3","F4","F5","F6","SF1","SF2","SF3","VS1","VS2","VF1","VF2","PL1","PL2","PJ1","PJ2","SR1","SR2"]
concreteType_list is array of strings                                  -> Type of Concrete ["BPS-NF","BCP-NF","BAP-NF","BIPS-NF","BICP-NF","BPS-NM","BCP-NM","BPS","BCP","BAP","BHN","MRT","GRV","BCX"]
productType_list is array of strings                                   -> Type of Material ["AGGREGATE","CEMENT","ADDITIVE","ADMIXTURE","SPECIAL","WATER"]
admixtureDosageMode_list is array of strings                   -> Admixture Dosage Method ["C","L","C+A"] C : Ciment, L : Liant équivalent, : C+A : Ciment + Addition
additiveType_list is array of strings                                  -> List of Types of Additives ["LIMESTONE","ASH","FILLER","SLAG","METAKAOLIN","PIGMENT","SILICA"]
specialProductIntroduction_list is array of strings    -> Special Product, Introduction Method ["MIXER","TRUCK"]
specialProductType_list is array of strings                    -> Type of Special Product ["DYE","FIBER","SPECIAL","FIBERM"]
specialProductPackaging_list is array of strings               -> Packaging Method of Special Product ["SOLID","LIQUID"]

EXIM_formulaDescription

exportDate is DateHour                         -> Export Date from BRG-LAB
exportLogin is strings                         -> Login of the User Who Exported the Formula
exportUserName is strings                      -> Full Name of the User Who Exported the Formula

formulaNumber is string                                -> Formula Number (plantCode + separator + formulaCode + (separator + recipe)) as displayed in BRG-LAB
plantCode is string                                    -> Plant Code
formulaCode is strings                 -> Formula Code
plant is string                                                -> Plant Designation
recipe is strings                              -> Recipe Designation (According to Controller, Optional)
isActive is boolean                            -> Active / Inactive
status is string                                               -> Formula Status (see status_list)
commercialDesignation is string                -> Commercial Designation of the Formula
standardDesignation is string                  -> Normative Designation of the Formula
concreteType is string                                 -> Type of Concrete (see concreteType_list)
family is strings                              -> Family (Optional depending on the controller)
standard is string                                             -> Standard (unformatted string)
productCode is string                                  -> Product Code (not used)
utilisation is string                                  -> Formula Usage (free text defined by the user)
publicInformation is string                    -> Public Information (free text defined by the user)
privateInformation is string                   -> Private Information (free text defined by the user)
centralistInformation is string                -> Information to be Transmitted to the Central Operator (free text defined by the user)

// Standard specifications
expositionClass is string                              -> (See expositionClass_list)
performanceExpositionClass is string   -> (See expositionClass_list + "p")
chlorideClass is string                                -> (See chlorideClass_list)
densityClass is string                                 -> (See densityClass_list)
resistanceClass is string                              -> (See resistancyClass_list)
consistancyClass is string                             -> (See consistancyClass_list)
consistancyTarget is string                    -> (Consistency Class entered by the user (in this case, consistencyClass is empty))
expositionClassLabel is string                 -> Designation of the Exposure Class (free text)
chlorideClassLabel is string                   -> Designation of the Chloride Class (free text)
densityClassLabel is string                    -> Designation of the Density Class (free text)
consistancyClassLabel is string                -> Designation of the Consistency Class (free text)

// Technical specifications
totalWeight is real                                    -> Total Weight of the Formula
equivalentBinder is real                               -> Equivalent Binder
minBinder is real                                              -> Minimum Binder Required by the Standard
GonS is real                                                   -> Ratio G/S
granularity is real                                    -> Granularity
granularyWater is real                                 -> Water Absorbed by Aggregates
efficientWater is real                                 -> Effective Water
admixtureWater is real                                 -> Water Added by Admixtures
totalWater is real                                     -> Total Water
WonC is real                                                   -> Ratio E/C
entrainmentAir is real                                 -> % of Entrained Air
occludedAir is real                                    -> % of Entrapped Air
mixingTime is real                                     -> Mixing Duration
NA2O is real                                                   -> Quantity NA2O
chlorideIon is real                                    -> Quantity of Chloride Ions
CO2 is real                                                    -> Quantity of CO2
suspendedSolidsMax is real                     -> Maximum Suspended Solids Allowed in Water
totalPrice is real                                     -> Total Price of the Formula
// Added on 02/13/2023
recycledMassRate is real                               -> Mass Rate of Recycled Material
recycledPourcentage is real                    -> % of Recycled Aggregate
recycledSandPourcentage is real                -> % of Recycled Sand
recycledAggregateType1 is real                 -> % of Type 1 Recycled Aggregate
recycledAggregateType2 is real                 -> % of Type 2 Recycled Aggregate

// fields for specific automaton
automatonCode0 is string
automatonCode1 is string
automatonCode2 is string
automatonCode3 is string
automatonCode4 is string
automatonCode5 is string
automatonCode6 is string
automatonCode7 is string
automatonCode8 is string
automatonCode9 is string

dosages is array of EXIM_dosage

EXIM_dosage

productCode is string  -> Product Code (the product code must be identical between the controller and BRG-LAB to establish the link)
Dosage is real                 -> Dosage
dosageUnity is string  -> Unity of dosage ["Kg","l","%","DOSE"]

// fields for specific automaton
automatonCode0 is string
automatonCode1 is string
automatonCode2 is string
automatonCode3 is string
automatonCode4 is string

EXIM_material

// General definitions
corporate is string                    -> Parent Company (in case the business has multiple production sites, otherwise leave empty)
plant is string                                -> Production Site Designation
productType is string                  -> (See productType_list)
designation is string                  -> Production Site Designation
productCode is string                  -> Product Code (the product code must be identical between the controller and BRG-LAB to establish the link)
density is real                                -> Density
NA20 is real                                   -> % NA2O
CO2 is real                                    -> CO2 / tons to Kg
chlorideIon is real                    -> % of Chloride Ions
CMprice is real                                -> Price per Cubic Meter
tonPrice is real                               -> Price per Ton

// Admixture definition
admixtureDryExtract is real            -> % of Active Ingredient in the Admixture
admixtureMaxRange is real                      -> Maximum Usage Range
admixtureMinRange is real                      -> Minimum Usage Range
admixtureType is string                        -> (See admixtureType_list)
admixtureDosageMode is string          -> (See admixtureDosageMode_list)

// Cement definition
cementTrueClass is real                -> Actual Class of Cement
cementType is string                   -> (See cementType_list)

// Aggregate definition
aggregateGranulometry is string        -> Grain Size in the format {Sieve;Sieve;...}{Passing;Passing;...} (decimal separator .)
aggregateAbsorption is real            -> Aggregate Absorption Coefficient
aggregateIsSand is boolean             -> The aggregate is sand
// Rajouté le 13/02/2023
aggregatedNature is string                     -> Nature of the Aggregate [A -> Artificial, N -> Natural, Tx -> Pre-mixed, Y -> Recycled]
aggregateRecycledType is integer       -> Type of Recycled Aggregate [1,2,3]
aggregateRecycledMassRate is real      -> Mass Rate of Recycled Aggregate


// Additive definition
additiveK is real                              -> K Ratio of the Additive
additiveType is string                 -> (See additiveType_list)

// Special products
specialProductIntroduction is string   -> Method of Introduction for Special Products (See specialProductIntroduction_list)
specialProductType is string                   -> Type of Special Product (See additiveType_list)
specialProductPackaging is string              -> Packaging Method of the Special Product (See specialProductPackaging_list)

// Other features for specifics automaton
automatonCode0 is string
automatonCode1 is string
automatonCode2 is string
automatonCode3 is string
automatonCode4 is string

EXIM_automatomFormulaResult

importationResult is a array of EXIM_automatomFormulaResultDetail

EXIM_automatomFormulaResultDetail

plantCode is string                    -> Central Code
formulaNumber is string                -> Formula Number  formulaNumber ( plantCode + séparateur "-" + formulaCode )
importationResult is int               -> Import Result ["200","500"] 200 : Success ; 500 : Internal Error
errorDetail is Buffer                  -> Import Error Detail to be Transmitted