Monday, 14 December 2015

Import the ProductAndProductmaster Through x++
static void ImportProductAndProductmaster(Args _args)
{
    #AviFiles

    SysOperationProgress progress       = new SysOperationProgress();
    SysExcelApplication                 application;
    SysExcelWorkbooks                   workbooks;
    SysExcelWorkbook                    workbook;
    SysExcelWorksheets                  worksheets;
    SysExcelWorksheet                   worksheet;
    SysExcelWorkSheet                   workSheetInventTableModule;
    SysExcelCells                       cellsInventTableModule;
    SysExcelCells                       cells;
    COMVariantType                      type;
    COMVariantType                      typeModule;
    EcoResProduct                       ecoResProduct;
    EcoResProductMaster                 ecoResProductMaster;
    EcoResProductIdentifier             ecoResProductIdentifier;
    EcoResProductDimensionGroupProduct  ecoResProductDimensionGroupProduct;
    EcoResProductMasterModelingPolicy   ecoResProductMasterModelingPolicy;
    EcoResDistinctProduct               ecoResDistinctProduct;
    EcoResColor                         ecoResColor;
    EcoResProductMasterColor            ecoResProductMasterColor;
    EcoResProductVariantColor           ecoResProductVariantColor;
    EcoResColorName                     ecoResColorName;
    EcoResStorageDimensionGroupProduct  ecoResStorageDimensionGroupProduct;
    EcoResTrackingDimensionGroupProduct ecoResTrackingDimensionGroupProduct;
    EcoResConfiguration                 ecoResConfiguration;
    EcoResProductMasterConfiguration    ecoResProductMasterConfiguration;
    EcoResDistinctProductVariant        ecoResDistinctProductVariant;
    EcoResProductVariantConfiguration   ecoResProductVariantConfiguration;
    //EcoResStorageDimensionGroupName     ecoResStorageDimensionGroupName;
    EcoResProductDimensionGroupName     ecoResProductDimensionGroupName;
    EcoResStorageDimensionGroupName         storageDimensionGroupName;
    EcoResTrackingDimensionGroupName        trackingDimensionGroupName;
    EcoResProductDimensionGroupName         productDimensionGroupName;
    UnitOfMeasureSymbol                     unitOfMeasureSymbol1,unitOfMeasureSymbol2,unitOfMeasureSymbol3;
    TaxItemGroup                            taxItemGroup1,taxItemGroup2;
    ItemProdGroupId                         prodGroupId;
    EcoResItemColorName                     itemColorName;
    ItemBuyerGroupId                        buyerGroupId;
    IntrastatItemCodeId                     intrastatItemCodeId;
    ItemOrigCountryRegionId                 countryRegionId;
    InventNumGroupId                        inventNumGroupId;
    PdsLeadTimeAdvice                       pdsLeadTimeAdvice;
    PmfProductType                          pmfProductType;
    ReqGroupId                              reqGroupId;
    InventTable                         inventTable;
    InventTableModule                   inventTableModule;
    InventItemSetupSupplyType           inventItemSetupSupplyType;
    EcoResStorageDimensionGroupItem     ecoResStorageDimensionGroupItem;
    EcoResTrackingDimensionGroupItem    ecoResTrackingDimensionGroupItem;
    InventModelGroupItem                inventModelGroupItem;
    InventItemGroupItem                 inventItemGroupItem;
    InventDim                           inventDim;
    InventDimCombination                inventDimCombination;
    EcoResCategory                      ecoResCategory;
    EcoResProductSubtype                productSubtype;
    EcoResProductType                                   productType;
    EcoResVariantConfigurationTechnologyType            ecoResVariantConfigurationTechnologyType;
    EcoResProductDimensionGroup                         ecoResProductDimensionGroup;
    //PmfProductType                                      pmfProductType;
    EcoResStorageDimensionGroup                         ecoResStorageDimensionGroup;
    EcoResEcoResProduct_Product_Master      productMaster;
    EcoResEcoResProduct_Product_Distinct    distMaster;
    EcoResProductDisplayProductNumber       productNumber;
    EcoResEcoResProduct                     ecoResProd;
    ItemId                                  itemid;
    RecId                                   recid;
    Name                                    name;
    EcoResProductSearchName                 searchName;
    EcoResCategoryName                      categoryName;
    InventModelGroupId                      inventModelGroupId;
    ItemGroupId                             itemGroupId;
    EcoResStorageDimensionGroupRecId        storageDimensionGroupRecId;
  //  TrackingDimensionGroup                  trackingDimensionGroup;
    UnitOfMeasureSymbol                     unitOfMeasureSymbol;
    boolean                                     isMaster = false;
    container                               Item1, offsetaccount1;
    str                                     ProductDimensionGroup,StorageDimensionGroup,TrackingDimensionGroup;
    Struct                                  struct = new Struct();
    container                               ledgerDimension;
    DimensionDefault DimensionDefault;
    int row = 1;
    FileIoPermission perm;
    #define.Filename(@'D:\Released Product.xlsx')
    #define.FileMode('W')

    ;
    perm = new FileIOPermission(#FileName, #FileMode);

    perm.assert();

    application = SysExcelApplication::construct();

    workbooks = application.workbooks();

    try

    {

        workbooks.open(#Filename);

    }

    catch (Exception::Error)

    {

        throw error("File cannot be opened.");

    }

    workbook = workbooks.item(1);

    worksheets = workbook.worksheets();

    worksheet = worksheets.itemFromNum(1);

    cells = worksheet.cells();
    progress.setAnimation(#AviTransfer);

    try

    {

        ttsbegin;

        do

        {

            row++;

            if (row >= 1)

            {

                productType                 = str2enum(productType, any2str(cells.item(row, 1).value().bStr()));

                productSubtype              = str2enum(productSubtype, any2str(cells.item(row, 2).value().bStr()));

                productNumber               = any2str(cells.item(row, 3).value().bStr());

                itemid                      = any2str(cells.item(row, 4).value().bStr());

                name                        = any2str(cells.item(row, 5).value().bStr());
                SearchName                  = any2str(cells.item(row, 6).value().bStr());
                categoryName                = any2str(cells.item(row, 7).value().bStr());
                inventModelGroupId          = any2str(cells.item(row, 8).value().bStr());
                itemGroupId                 = any2str(cells.item(row, 9).value().bStr());
                storageDimensionGroupName   = any2str(cells.item(row, 10).value().bStr());
                trackingDimensionGroupName  = any2str(cells.item(row, 11).value().bStr());
                productDimensionGroupName   = any2str(cells.item(row, 12).value().bStr());
                unitOfMeasureSymbol1        = any2str(cells.item(row, 13).value().bStr());
                unitOfMeasureSymbol2        = any2str(cells.item(row, 14).value().bStr());
                unitOfMeasureSymbol3        = any2str(cells.item(row, 15).value().bStr());
                taxItemGroup1               = any2str(cells.item(row, 16).value().bStr());
                taxItemGroup2               = any2str(cells.item(row, 17).value().bStr());
                prodGroupId                 = any2str(cells.item(row, 18).value().bStr());
                itemColorName               = any2str(cells.item(row, 21).value().bStr());
                buyerGroupId                = any2str(cells.item(row, 22).value().bStr());
                intrastatItemCodeId         = any2str(cells.item(row, 26).value().bStr());
                countryRegionId             = any2str(cells.item(row, 27).value().bStr());
                inventNumGroupId            = any2str(cells.item(row, 28).value().bStr());
                pdsLeadTimeAdvice           = any2int(cells.item(row, 29).value().bStr());
                pmfProductType              = str2enum(pmfProductType, any2str(cells.item(row, 30).value().bStr()));
                reqGroupId                  = any2str(cells.item(row, 32).value().bStr());


                if(productType == EcoResProductType::Item || productType == EcoResProductType::Service)

                {

                    if(productSubtype == EcoResProductSubtype::Product)

                    {
                        ecoResDistinctProduct.clear();
                        ecoResDistinctProduct.initValue();
                        ecoResDistinctProduct.ProductType = EcoResProductType::Item;
                        ecoResDistinctProduct.DisplayProductNumber = productNumber;
                        ecoResDistinctProduct.SearchName = Name;
                        if (ecoResDistinctProduct.validateWrite())
                        {
                            ecoResDistinctProduct.insert();
                            ecoResProductIdentifier.clear();
                            ecoResProductIdentifier.initValue();
                            ecoResProductIdentifier.ProductNumber = productNumber;
                            ecoResProductIdentifier.Product = ecoResDistinctProduct.RecId;
                            ecoResProductIdentifier.insert();

                            //Storage dimension group
                            ecoResStorageDimensionGroupProduct.clear();
                            ecoResStorageDimensionGroupProduct.initValue();
                            ecoResStorageDimensionGroupProduct.Product = ecoResDistinctProduct.RecId;
                            ecoResStorageDimensionGroupProduct.StorageDimensionGroup = EcoResStorageDimensionGroup::findByDimensionGroupName(storageDimensionGroupName).RecId;
                            if (ecoResStorageDimensionGroupProduct.validateWrite())
                            {
                                ecoResStorageDimensionGroupProduct.insert();
                            }
                                //Tracking dimension group
                            ecoResTrackingDimensionGroupProduct.clear();
                            ecoResTrackingDimensionGroupProduct.initValue();
                            ecoResTrackingDimensionGroupProduct.Product = ecoResDistinctProduct.RecId;
                            ecoResTrackingDimensionGroupProduct.TrackingDimensionGroup = EcoResTrackingDimensionGroup::findByDimensionGroupName(trackingDimensionGroupName).RecId;
                            if (ecoResTrackingDimensionGroupProduct.validateWrite())
                            {
                                ecoResTrackingDimensionGroupProduct.insert();
                            }
                            EcoResProductTranslation::createOrUpdateTranslation(ecoResDistinctProduct.RecId, Name,Name);
                            //Released product
                            inventTable.clear();
                            inventTable.initValue();
                            inventTable.initFromEcoResProduct(ecoResDistinctProduct);
                            inventTable.ItemId = itemid;
                            inventTable.NameAlias = Name;
                            inventTable.ItemBuyerGroupId                = buyerGroupId;
                            inventTable.ProdGroupId                     = prodGroupId;
                            inventTable.ReqGroupId                      = reqGroupId;
                            inventTable.PmfProductType                  = pmfProductType;
                            inventTable.OrigCountryRegionId             = countryRegionId;
                            inventTable.BatchNumGroupId                 = inventNumGroupId;
                            inventTable.StandardInventColorId           = itemColorName;
                            inventTable.Intracode                       = intrastatItemCodeId;
                            inventTable.PdsShelfAdvice                  = any2int(cells.item(row, 29).value().bStr());
                            //inventTable.editTMSInventEnabled = any2str(cells.item(row, 34).value().bStr());
                            if (inventTable.validateWrite())
                            {
                                inventTable.insert();
                                //Inventory model group
                                inventModelGroupItem.clear();
                                inventModelGroupItem.initValue();
                                inventModelGroupItem.ItemDataAreaId = inventTable.dataAreaId;
                                inventModelGroupItem.ItemId = inventTable.ItemId;
                                inventModelGroupItem.ModelGroupId = inventModelGroupId;
                                inventModelGroupItem.ModelGroupDataAreaId = curext();
                                inventModelGroupItem.insert();
                                //Item group
                                inventItemGroupItem.clear();
                                inventItemGroupItem.initValue();
                                inventItemGroupItem.ItemDataAreaId = inventTable.dataAreaId;
                                inventItemGroupItem.ItemId = inventTable.ItemId;
                                inventItemGroupItem.ItemGroupId = itemGroupId;
                                inventItemGroupItem.ItemGroupDataAreaId = curext();
                                inventItemGroupItem.insert();
                                //Extended product details – Inventory
                                inventTableModule.clear();
                                inventTableModule.initValue();
                                inventTableModule.ItemId = inventTable.ItemId;
                                inventTableModule.ModuleType = ModuleInventPurchSales::Invent;
                                inventTableModule.insert();
                                //Extended product details – Purchase
                                inventTableModule.clear();
                                inventTableModule.initValue();
                                inventTableModule.ItemId = inventTable.ItemId;
                                inventTableModule.ModuleType = ModuleInventPurchSales::Purch;
                                inventTableModule.insert();
                                //Extended product details – Sales
                                inventTableModule.clear();
                                inventTableModule.initValue();
                                inventTableModule.ItemId = inventTable.ItemId;
                                inventTableModule.ModuleType = ModuleInventPurchSales::Sales;
                                inventTableModule.insert();
                                //Warehouse items
                                InventItemLocation::createDefault(inventTable.ItemId);
                                //Supply type setup
                                inventItemSetupSupplyType.clear();
                                inventItemSetupSupplyType.initValue();
                                inventItemSetupSupplyType.ItemId = inventTable.ItemId;
                                inventItemSetupSupplyType.ItemDataAreaId = inventTable.DataAreaId;
                                inventItemSetupSupplyType.insert();
                                //Product storage dimension group
                                ecoResStorageDimensionGroupProduct = EcoResStorageDimensionGroupProduct::findByProduct(ecoResDistinctProduct.RecId);
                                if (ecoResStorageDimensionGroupProduct.RecId)
                                {
                                    ecoResStorageDimensionGroupItem.clear();
                                    ecoResStorageDimensionGroupItem.initValue();
                                    ecoResStorageDimensionGroupItem.ItemDataAreaId = inventTable.DataAreaId;
                                    ecoResStorageDimensionGroupItem.ItemId = inventTable.ItemId;
                                    ecoResStorageDimensionGroupItem.StorageDimensionGroup   = ecoResStorageDimensionGroupProduct.StorageDimensionGroup;
                                    ecoResStorageDimensionGroupItem.insert();
                                }
                                //Product tracking dimension group
                                ecoResTrackingDimensionGroupProduct = EcoResTrackingDimensionGroupProduct::findByProduct(ecoResDistinctProduct.RecId);
                                if (ecoResTrackingDimensionGroupProduct.RecId)
                                {
                                    ecoResTrackingDimensionGroupItem.clear();
                                    ecoResTrackingDimensionGroupItem.initValue();
                                    ecoResTrackingDimensionGroupItem.ItemDataAreaId = inventTable.DataAreaId;
                                    ecoResTrackingDimensionGroupItem.ItemId = inventTable.ItemId;
                                    ecoResTrackingDimensionGroupItem.TrackingDimensionGroup = ecoResTrackingDimensionGroupProduct.TrackingDimensionGroup;
                                    ecoResTrackingDimensionGroupItem.insert();
                                }
                            }
                        }
                    }
                    else if(productSubtype == EcoResProductSubtype::ProductMaster || productSubtype == EcoResProductSubtype::ProductVariant)
                    {
                        ecoResProductMaster.clear();
                        ecoResProductMaster.initValue();

                        ecoResProductMaster.ProductType = EcoResProductType::Item;
                        ecoResProductMaster.DisplayProductNumber = productNumber;
                        ecoResProductMaster.SearchName = Name;
                        ecoResProductMaster.VariantConfigurationTechnology = EcoResVariantConfigurationTechnologyType::PredefinedVariants;
                        if (ecoResProductMaster.validateWrite())
                        {
                            ecoResProductMaster.insert();

                            ecoResProductIdentifier.clear();
                            ecoResProductIdentifier.initValue();

                            ecoResProductIdentifier.ProductNumber = productNumber;
                            ecoResProductIdentifier.Product = ecoResProductMaster.RecId;

                            ecoResProductIdentifier.insert();

                            //Product dimension group
                            ecoResProductDimensionGroupProduct.clear();
                            ecoResProductDimensionGroupProduct.initValue();
                            ecoResProductDimensionGroupProduct.initFromProduct(ecoResProductMaster);

                            ecoResProductDimensionGroupProduct.ProductDimensionGroup = EcoResProductDimensionGroup::findByDimensionGroupName(productDimensionGroupName).RecId;

                            if (ecoResProductDimensionGroupProduct.validateWrite())
                            {
                                ecoResProductDimensionGroupProduct.insert();
                            }
                             //Storage dimension group
                            ecoResStorageDimensionGroupProduct.clear();
                            ecoResStorageDimensionGroupProduct.initValue();
                            ecoResStorageDimensionGroupProduct.Product = ecoResProductMaster.RecId;
                            ecoResStorageDimensionGroupProduct.StorageDimensionGroup = EcoResStorageDimensionGroup::findByDimensionGroupName(storageDimensionGroupName).RecId;
                            if (ecoResStorageDimensionGroupProduct.validateWrite())
                            {
                                ecoResStorageDimensionGroupProduct.insert();
                            }
                                //Tracking dimension group
                            ecoResTrackingDimensionGroupProduct.clear();
                            ecoResTrackingDimensionGroupProduct.initValue();
                            ecoResTrackingDimensionGroupProduct.Product = ecoResProductMaster.RecId;
                            ecoResTrackingDimensionGroupProduct.TrackingDimensionGroup = EcoResTrackingDimensionGroup::findByDimensionGroupName(trackingDimensionGroupName).RecId;
                            if (ecoResTrackingDimensionGroupProduct.validateWrite())
                            {
                                ecoResTrackingDimensionGroupProduct.insert();
                            }
                            ecoResProductMasterModelingPolicy.clear();
                            ecoResProductMasterModelingPolicy.initValue();

                            ecoResProductMasterModelingPolicy.ProductMaster = ecoResProductMaster.RecId;

                            if (ecoResProductMasterModelingPolicy.validateWrite())
                            {
                                ecoResProductMasterModelingPolicy.insert();
                            }

                            //Product translation
                            EcoResProductTranslation::createOrUpdateTranslation(ecoResProductMaster.RecId, Name, Name);

                            //Color
                            ecoResColor = EcoResColor::findByName(itemColorName);
                            if(!ecoResColor)
                            {
                                ecoResColor.clear();
                                ecoResColor.initvalue();
                                ecoResColor.name = itemColorName;
                                ecoResColor.insert();
                            }
                            //Color assigned to product master
                            ecoResProductMasterColor.clear();
                            ecoResProductMasterColor.initValue();
                            ecoResProductMasterColor.Color = ecoResColor.RecId;
                            ecoResProductMasterColor.ColorProductDimensionAttribute =EcoResProductDimensionAttribute::inventDimFieldId2DimensionAttributeRecId(fieldNum(InventDim, InventColorId));
                            ecoResProductMasterColor.ColorProductMaster = ecoResProductMaster.RecId;
                            ecoResProductMasterColor.insert();

                            ecoResDistinctProductVariant.clear();
                            ecoResDistinctProductVariant.initValue();
                            ecoResDistinctProductVariant.DisplayProductNumber = EcoResProductNumberBuilderVariant::buildFromProductNumberAndDimensions(
                            ecoResProductMaster.productNumber(),
                            EcoResProductVariantDimValue::getDimensionValuesContainer("", "", itemColorName));
                            ecoResDistinctProductVariant.SearchName = ecoResProductMaster.SearchName + itemColorName/*ColorId*/;
                            ecoResDistinctProductVariant.ProductType = ecoResProductMaster.ProductType;
                            ecoResDistinctProductVariant.ProductMaster = ecoResProductMaster.RecId;
                            ecoResDistinctProductVariant.insert();

                            //Product variant color
                            ecoResProductVariantColor.clear();
                            ecoResProductVariantColor.clear();
                            ecoResProductVariantColor.initValue();
                            ecoResProductVariantColor.initFromDistinctProductVariant(ecoResDistinctProductVariant);
                            ecoResProductVariantColor.ProductDimensionAttribute = EcoResProductDimensionAttribute::inventDimFieldId2DimensionAttributeRecId(fieldNum(InventDim, InventColorId));
                            ecoResProductVariantColor.Color = ecoResColor.RecId;
                            ecoResProductVariantColor.insert();

                            //Released product
                            inventTable.clear();
                            inventTable.initValue();

                            inventTable.initFromEcoResProduct(ecoResProductMaster);

                            inventTable.ItemId = itemid;
                            inventTable.NameAlias = name;
                            inventTable.ItemBuyerGroupId                = buyerGroupId;
                            inventTable.ProdGroupId                     = prodGroupId;
                            inventTable.ReqGroupId                      = reqGroupId;
                            inventTable.PmfProductType                  = pmfProductType;
                            inventTable.OrigCountryRegionId             = countryRegionId;
                            inventTable.BatchNumGroupId                 = inventNumGroupId;
                            inventTable.StandardInventColorId           = itemColorName;
                            inventTable.Intracode                       = intrastatItemCodeId;
                            inventTable.PdsShelfAdvice                  = any2int(cells.item(row, 29).value().bStr());
                            if (inventTable.validateWrite())
                            {
                                inventTable.insert();

                                //Inventory model group
                                inventModelGroupItem.clear();
                                inventModelGroupItem.initValue();
                                inventModelGroupItem.ItemDataAreaId = inventTable.dataAreaId;
                                inventModelGroupItem.ItemId = inventTable.ItemId;
                                inventModelGroupItem.ModelGroupId = inventModelGroupId;
                                inventModelGroupItem.ModelGroupDataAreaId = curext();
                                inventModelGroupItem.insert();

                                //Item group
                                inventItemGroupItem.clear();
                                inventItemGroupItem.initValue();
                                inventItemGroupItem.ItemDataAreaId = inventTable.dataAreaId;
                                inventItemGroupItem.ItemId = inventTable.ItemId;
                                inventItemGroupItem.ItemGroupId = itemGroupId;
                                inventItemGroupItem.ItemGroupDataAreaId = curext();
                                inventItemGroupItem.insert();
                                //Extended product details - Inventory
                                inventTableModule.clear();
                                inventTableModule.initValue();
                                inventTableModule.ItemId = inventTable.ItemId;
                                inventTableModule.ModuleType = ModuleInventPurchSales::Invent;
                                inventTableModule.insert();

                                //Extended product details - Purchase
                                inventTableModule.clear();
                                inventTableModule.initValue();
                                inventTableModule.ItemId = inventTable.ItemId;
                                inventTableModule.ModuleType = ModuleInventPurchSales::Purch;
                                inventTableModule.insert();

                                //Extended product details - Sales
                                inventTableModule.clear();
                                inventTableModule.initValue();
                                inventTableModule.ItemId = inventTable.ItemId;
                                inventTableModule.ModuleType = ModuleInventPurchSales::Sales;
                                inventTableModule.insert();
                                //Warehouse items
                                InventItemLocation::createDefault(inventTable.ItemId);

                                //Supply type setup
                                inventItemSetupSupplyType.clear();
                                inventItemSetupSupplyType.initValue();
                                inventItemSetupSupplyType.ItemId = inventTable.ItemId;
                                inventItemSetupSupplyType.ItemDataAreaId = inventTable.DataAreaId;
                                inventItemSetupSupplyType.insert();

                                //Product storage dimension group
                                ecoResStorageDimensionGroupProduct = EcoResStorageDimensionGroupProduct::findByProduct(ecoResProductMaster.RecId);

                                if (ecoResStorageDimensionGroupProduct.RecId)
                                {
                                    ecoResStorageDimensionGroupItem.clear();
                                    ecoResStorageDimensionGroupItem.initValue();
                                    ecoResStorageDimensionGroupItem.ItemDataAreaId = inventTable.DataAreaId;
                                    ecoResStorageDimensionGroupItem.ItemId = inventTable.ItemId;
                                    ecoResStorageDimensionGroupItem.StorageDimensionGroup   = ecoResStorageDimensionGroupProduct.StorageDimensionGroup;
                                    ecoResStorageDimensionGroupItem.insert();
                                }
                                ecoResTrackingDimensionGroupProduct = EcoResTrackingDimensionGroupProduct::findByProduct(ecoResProductMaster.RecId);

                                if (ecoResTrackingDimensionGroupProduct.RecId)
                                {
                                    ecoResTrackingDimensionGroupItem.clear();
                                    ecoResTrackingDimensionGroupItem.initValue();
                                    ecoResTrackingDimensionGroupItem.ItemDataAreaId = inventTable.DataAreaId;
                                    ecoResTrackingDimensionGroupItem.ItemId = inventTable.ItemId;
                                    ecoResTrackingDimensionGroupItem.TrackingDimensionGroup = ecoResTrackingDimensionGroupProduct.TrackingDimensionGroup;
                                    ecoResTrackingDimensionGroupItem.insert();
                                }
                            }
                            inventDim.clear();
                            inventDim.InventColorId = itemColorName;/*ColorId*/
                            inventDim = InventDim::findOrCreate(inventDim);

                            //Released product variant
                            inventDimCombination.clear();
                            inventDimCombination.initValue();
                            inventDimCombination.DistinctProductVariant = ecoResDistinctProductVariant.RecId;
                            inventDimCombination.ItemId = inventTable.ItemId;
                            inventDimCombination.InventDimId = inventDim.InventDimId;
                            inventDimCombination.insert();


                        }
                    }
                }
            }
            type = cells.item(row+1, 1).value().variantType();


        }
        while (type != COMVariantType::VT_EMPTY);

        ttscommit;
    }
    catch(Exception::Error)

    {

        workbooks.close();

        CodeAccessPermission::revertAssert();

        application.quit();

        ttsabort;

    }

    workbooks.close();

    CodeAccessPermission::revertAssert();

    application.quit();



}

No comments:

Post a Comment