/// <summary> /// Создать XML файлы из данных, считанных из БД /// </summary> /// <param name="rep_year">Отчетный год</param> /// <param name="org">Организация</param> /// <param name="list_id">Список идентификаторов пакетов</param> /// <param name="connectionStr">Строка подключения</param> /// <param name="mapXml">Карта - выходной параметр</param> /// <param name="szv3Xml">Сводная ведомость - выходной параметр</param> /// <param name="szv2XmlArray">Описи - выходной параметр</param> /// <param name="szv1XmlArray">Документы СЗВ1 - выходной параметр</param> /// <returns></returns> public static int MakeXml(int repYear, Org org, IEnumerable <long> listId, string connectionStr, out XmlDocument mapXml, out XmlDocument szv3Xml, out IEnumerable <XmlDocument> szv2XmlArray, out IEnumerable <IEnumerable <XmlDocument> > szv1XmlArray) { int res = 0; XmlDocument szv3 = Szv3Xml.GetXml(org.idVal, repYear, connectionStr); LinkedList <XmlDocument> szv2Array = new LinkedList <XmlDocument>(); LinkedList <IEnumerable <XmlDocument> > szv1Array = new LinkedList <IEnumerable <XmlDocument> >(); foreach (long listID in listId) { XmlDocument szv2 = Szv2Xml.GetXml(listID, connectionStr); long[] docsID = Docs.GetDocsID(listID, connectionStr); IEnumerable <XmlDocument> szv1 = Szv1Xml.GetXml(docsID, org, connectionStr); if (szv1 != null && szv2 != null) { szv2Array.AddLast(szv2); szv1Array.AddLast(szv1); } else { res = -1; } } mapXml = MapXml.GetXml(szv2Array, szv1Array); szv3Xml = szv3; szv2XmlArray = szv2Array; szv1XmlArray = szv1Array; // return(res); }