CSReportDll.cReportPage.saveForWeb C# (CSharp) Метод

saveForWeb() приватный Метод

private saveForWeb ( CSXml xDoc, XmlNode nodeFather ) : bool
xDoc CSXml
nodeFather System.Xml.XmlNode
Результат bool
        internal bool saveForWeb(CSXml.cXml xDoc, XmlNode nodeFather)
        {
            CSXml.cXmlProperty xProperty = null;
            XmlNode nodeObj = null;

            xProperty = new CSXml.cXmlProperty();

            xProperty.setName("Page");
            nodeObj = xDoc.addNodeToNode(nodeFather, xProperty);

            xDoc.setNodeText(nodeObj, "Página " + m_pageNumber);

            cReportPageField pageFld = null;
            XmlNode nodeAux = null;
            float top = 0;
            bool addLine = false;

            int nHeader = 0;

            xProperty.setName(C_NODERPTHEADER);
            xProperty.setValue(eTypes.eText, "");
            nodeAux = xDoc.addNodeToNode(nodeObj, xProperty);

            for (int _i = 0; _i < m_header.count(); _i++)
            {
                pageFld = m_header.item(_i);
                addLine = false;

                if (pageFld.getTop() == 0)
                {
                    if (top != pageFld.getInfo().getAspect().getTop())
                    {
                        top = pageFld.getInfo().getAspect().getTop();
                        addLine = true;
                        nHeader = nHeader + 1;
                    }
                }
                else
                {
                    if (top != pageFld.getTop())
                    {
                        top = pageFld.getTop();
                        addLine = true;
                        nHeader = nHeader + 1;
                    }
                }

                if (addLine)
                {
                    xProperty.setName(C_NODERPTHEADERLINE + nHeader.ToString());
                    xProperty.setValue(eTypes.eText, "");
                    nodeAux = xDoc.addNodeToNode(nodeObj, xProperty);
                }

                pageFld.saveForWeb(xDoc, nodeAux);
            }

            xProperty.setName(C_NODERPTDETAIL);
            xProperty.setValue(eTypes.eText, "");
            nodeAux = xDoc.addNodeToNode(nodeObj, xProperty);

            for (int _i = 0; _i < m_detail.count(); _i++)
            {
                pageFld = m_detail.item(_i);

                addLine = false;

                if (pageFld.getTop() == 0)
                {
                    if (top != pageFld.getInfo().getAspect().getTop())
                    {
                        top = pageFld.getInfo().getAspect().getTop();
                        addLine = true;
                    }
                }
                else
                {
                    if (top != pageFld.getTop())
                    {
                        top = pageFld.getTop();
                        addLine = true;
                    }
                }

                if (addLine)
                {
                    xProperty.setName(C_NODERPTDETAILLINE);
                    xProperty.setValue(eTypes.eText, "");
                    nodeAux = xDoc.addNodeToNode(nodeObj, xProperty);
                }

                pageFld.saveForWeb(xDoc, nodeAux);
            }

            xProperty.setName(C_NODERPTFOOTER);
            xProperty.setValue(eTypes.eText, "");
            nodeAux = xDoc.addNodeToNode(nodeObj, xProperty);

            for (int _i = 0; _i < m_footer.count(); _i++)
            {
                pageFld = m_footer.item(_i);
                addLine = false;

                if (pageFld.getTop() == 0)
                {
                    if (top != pageFld.getInfo().getAspect().getTop())
                    {
                        top = pageFld.getInfo().getAspect().getTop();
                        addLine = true;
                    }
                }
                else
                {
                    if (top != pageFld.getTop())
                    {
                        top = pageFld.getTop();
                        addLine = true;
                    }
                }

                if (addLine)
                {
                    xProperty.setName(C_NODERPTFOOTERLINE);
                    xProperty.setValue(eTypes.eText, "");
                    nodeAux = xDoc.addNodeToNode(nodeObj, xProperty);
                }

                pageFld.saveForWeb(xDoc, nodeAux);
            }

            return true;
        }

Usage Example

Пример #1
0
        private bool saveDataForWeb(cReportPage page, String dataName, String dataPath)
        { // TODO: Use of ByRef founded Private Function SaveDataForWeb(ByRef Page As cReportPage, ByVal DataName As String, ByVal DataPath As String) As Boolean
            CSXml.cXml docXml = null;
            docXml = new CSXml.cXml();

            docXml.init(null);
            docXml.setFilter("xml");
            docXml.setName(getFileName(dataName) + "-1.xml");
            docXml.setPath(dataPath);

            if (!docXml.newXml())
            {
                return false;
            }

            dataName = docXml.getName();

            CSXml.cXmlProperty xProperty = null;
            xProperty = new CSXml.cXmlProperty();

            xProperty.setName("Page_" + page.getPageNumber().ToString());
            xProperty.setValue(eTypes.eText, dataName);
            docXml.addProperty(xProperty);

            XmlNode nodeObj = null;

            xProperty.setName("Page");
            xProperty.setValue(eTypes.eText, "");
            nodeObj = docXml.addNode(xProperty);

            page.saveForWeb(docXml, nodeObj);

            return docXml.save();
        }