示例#1
0
        private void StartWork()
        {
            // xsd.exe CbcXML_v2.0.xsd /Classes oecdcbctypes_v5.0.xsd /Classes isocbctypes_v1.1.xsd


            var cbc_oecd = new CBC_OECD();

            ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial;
            using (var package = new ExcelPackage(xlsxFile))
            {
                gloabalDocSpec = new DocSpec_Type
                {
                    DocTypeIndic     = GetOECDDocTypeIndicEnumType(GetExcelStringValue(package, "CoverPage", "B24")), //   (S: CoverPage; Cells: B24)
                    DocRefId         = GetExcelStringValue(package, "CoverPage", "B25"),                              // "ZA2018DOCBAW", //   (S: CoverPage; Cells: B25)
                    CorrDocRefId     = "",
                    CorrMessageRefId = ""
                };

                cbc_oecd.version     = "2.0";
                cbc_oecd.MessageSpec = GetMessageSpec(package);
                cbc_oecd.CbcBody     = GetCbcBodies(package).ToArray();
            }


            var           xml      = "";
            XmlSerializer xsSubmit = new XmlSerializer(typeof(CBC_OECD));

            using (var sww = new StringWriter())
            {
                XmlWriterSettings settings = new XmlWriterSettings();
                settings.Indent = true;
                settings.NewLineOnAttributes = true;


                using (XmlWriter writer = XmlWriter.Create(sww, settings))
                {
                    xsSubmit.Serialize(writer, cbc_oecd);
                    xml = sww.ToString(); // Your XML
                }
            }


            using (StreamWriter file = new StreamWriter(xmlFilePath))
            {
                file.Write(xml);
            }
        }
示例#2
0
文件: Form1.cs 项目: KobusGitHub/CBC
        private void StartWork()
        {
            // xsd.exe CbcXML_v1.0.1.xsd /Classes oecdtypes_v4.1.xsd /Classes isocbctypes_v1.0.1.xsd
            var cbc_oecd = new CBC_OECD();

            ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial;
            using (var package = new ExcelPackage(xlsxFile))
            {
                gloabalDocSpec = new DocSpec_Type
                {
                    DocTypeIndic     = EnumLookup.GetOECDDocTypeIndicEnumType(GetExcelStringValue(package, "CoverPage", "B24")), //   (S: CoverPage; Cells: B24)
                    DocRefId         = GetExcelStringValue(package, "CoverPage", "B25"),                                         // "ZA2018DOCBAW", //   (S: CoverPage; Cells: B25)
                    CorrDocRefId     = "",
                    CorrMessageRefId = ""
                };

                cbc_oecd.version     = "1.0";
                cbc_oecd.MessageSpec = GetMessageSpec(package);
                cbc_oecd.CbcBody     = GetCbcBodies(package).ToArray();
            }
        }
        public DocSpec_Type GetDocSpec(ExcelPackage package, string docTypeIndic, string docRefId, string corrDocRefId, string corrMessageRefId)
        {
            DocSpec_Type docSpec = new DocSpec_Type
            {
                DocTypeIndic = EnumLookup.GetOECDDocTypeIndicEnumType(docTypeIndic),
                DocRefId     = docRefId,
            };


            if (!string.IsNullOrEmpty(corrDocRefId))
            {
                docSpec.CorrDocRefId = corrDocRefId;
            }

            if (!string.IsNullOrEmpty(corrMessageRefId))
            {
                docSpec.CorrMessageRefId = corrMessageRefId;
            }


            return(docSpec);
        }