/// <summary> /// Cria um leiaute completo para a geração de um arquivo /// </summary> /// <returns></returns> private ILeiaute GetLeiaute() { ILeiaute result = null; string descricao = "Exportação de arquivo de Pré-Venda"; //------------------------------------------------------------------ // Pesquisar pelo leiaute, se encontrar, não precisa criar um novo //------------------------------------------------------------------ IList<ILeiaute> list = new Exportacao().Find<ILeiaute>(new Where { { "Descricao", descricao } }); if(list.Count == 0) { result = new Exportacao(); result.PadraoNomeArquivo = @"K:\OpenPOS\Unico\Exporta\{0}.xml"; result.Descricao = descricao; result.FormatoArquivo = Enuns.UniBot.FormatoArquivo.XML; result.Codigo += "code={public void Export(Synchronize.Interface.IGeraArquivo geraArquivo, Where where)"; result.Codigo += "{"; result.Codigo += " IList<Data.Faturamento.Lancamento.Movimento.PreVenda.PreVenda> pvs ="; result.Codigo += " new Data.Faturamento.Lancamento.Movimento.PreVenda.PreVenda()"; result.Codigo += " .Find<Data.Faturamento.Lancamento.Movimento.PreVenda.PreVenda>(where);"; result.Codigo += " string template = \"PreVenda-{0}_{1:ddMMyyyy_HHmmss}\";"; result.Codigo += " string file = \"\";"; result.Codigo += " int i = 0;"; result.Codigo += " foreach(Data.Faturamento.Lancamento.Movimento.PreVenda.PreVenda pv in pvs)"; result.Codigo += " {"; result.Codigo += " System.Xml.XmlDocument doc = pv.GenerateFile();"; result.Codigo += " file = System.IO.Path.Combine(geraArquivo.FileInfo.DirectoryName,"; result.Codigo += " String.Format(geraArquivo.Leiaute.PadraoNomeArquivo, String.Format(template, ++i, DateTime.Now)));"; result.Codigo += " doc.Save(file);"; result.Codigo += " }"; result.Codigo += "}}"; result.TipoArquivo = Enuns.UniBot.Leiaute.TipoArquivo.PreVenda; result.Save(); } else result = list[0] as ILeiaute; return result; }
/// <summary> /// Cria um leiaute completo para a geração de um arquivo /// </summary> /// <returns></returns> private ILeiaute GetLeiaute() { ILeiaute result = null; string descricao = "Movimentacao Base"; //------------------------------------------------------------------ // Pesquisar pelo leiaute, se encontrar, não precisa criar um novo //------------------------------------------------------------------ IList<ILeiaute> list = new Exportacao().Find<ILeiaute>(new Where { { "Descricao", descricao } }); if(list.Count == 0) { #region base do leiaute result = new Exportacao(); result.Descricao = descricao; result.PadraoNomeArquivo = "Movimentacao_{date:dd-mm-yyyy}.txt"; result.Codigo = @"SELECT fat_Lan.GUID AS lanGUID, fat_Lan.EGUID AS lanEGUID, fat_Lan.Tipo, fat_Lan.Status, fat_LanMov.DataEmissao, fat_LanMov.VlrTotalBruto, cad_Item.GUID as itemGUID, cad_Item.EGUID AS itemCodigo, cad_Item.Descricao, fat_LanMovItem.Quantidade, fat_LanMovItem.VlrUnitarioLiquido FROM fat_Lan INNER JOIN fat_LanMov ON fat_LanMov.GUIDLan = fat_lan.GUID INNER JOIN fat_LanMovItem ON fat_LanMovItem.GUIDLanMov = fat_LanMov.GUIDLan INNER JOIN cad_Item ON cad_Item.GUID = fat_LanMovItem.GUIDItem"; #endregion #region headers result.Headers.Add(new Header { De = "1", Tamanho = 36, Nome = "lanGUID" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 20, Nome = "lanEGUID" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 1, Nome = "Tipo" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 1, Nome = "Status" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 10, Nome = "DataEmissao", Tipo = Enuns.UniBot.Tipo.Date }); #endregion #region Detalhes result.Detalhes.Add(new Detalhe { De = "1", Tamanho = 36, Nome = "lanGUID" }); result.Detalhes.Add(new Detalhe { De = (result.Detalhes[result.Detalhes.Count - 1].Ate + 1).ToString(), Tamanho = 36, Nome = "itemGUID" }); result.Detalhes.Add(new Detalhe { De = (result.Detalhes[result.Detalhes.Count - 1].Ate + 1).ToString(), Tamanho = 20, Nome = "itemCodigo" }); result.Detalhes.Add(new Detalhe { De = (result.Detalhes[result.Detalhes.Count - 1].Ate + 1).ToString(), Tamanho = 50, Nome = "Descricao" }); result.Detalhes.Add(new Detalhe { De = (result.Detalhes[result.Detalhes.Count - 1].Ate + 1).ToString(), Tamanho = 10, Nome = "Quantidade", Tipo = Enuns.UniBot.Tipo.Numeric }); result.Detalhes.Add(new Detalhe { De = (result.Detalhes[result.Detalhes.Count - 1].Ate + 1).ToString(), Tamanho = 10, Nome = "VlrUnitarioLiquido", Tipo = Enuns.UniBot.Tipo.Currency }); #endregion result.TipoArquivo = Enuns.UniBot.Leiaute.TipoArquivo.PreVenda; result.Save(); } else result = list[0] as ILeiaute; return result; }
/// <summary> /// Cria um leiaute completo para a geração de um arquivo /// </summary> /// <returns></returns> private ILeiaute GetLeiaute() { ILeiaute result = null; string descricao = "Exportação de arquivo de Mapa Resumo"; //------------------------------------------------------------------ // Pesquisar pelo leiaute, se encontrar, não precisa criar um novo //------------------------------------------------------------------ IList<ILeiaute> list = new Exportacao().Find<ILeiaute>(new Where { { "Descricao", descricao } }); if(list.Count == 0) { result = new Exportacao(); result.PadraoNomeArquivo = @"K:\OpenPOS\Unico\Exporta\{0}.xml"; result.Descricao = descricao; result.FormatoArquivo = Enuns.UniBot.FormatoArquivo.XML; result.Codigo = "code={"; result.Codigo += " public void Export(Synchronize.Interface.IGeraArquivo geraArquivo, Where where)"; result.Codigo += " {"; result.Codigo += " IList<Model.Arquivo.Registro.IRegistro01> regs01 = "; result.Codigo += " new Data.Arquivo.Registro.Registro01().Find<Model.Arquivo.Registro.IRegistro01>(where);"; result.Codigo += ""; result.Codigo += " string template = \"MapaResumo-{0}_{1:ddMMyyyy_HHmmss}\";"; result.Codigo += " string file = String.Empty;"; result.Codigo += " int i = 0;"; result.Codigo += ""; result.Codigo += " foreach(Model.Arquivo.Registro.IRegistro02 reg02 in (from r01 in regs01"; result.Codigo += " from r02 in r01.RegistrosR2"; result.Codigo += " select r02))"; result.Codigo += " {"; result.Codigo += " System.Xml.XmlDocument doc = reg02.ToXmlMapaResumo();"; result.Codigo += " file = System.IO.Path.Combine(geraArquivo.FileInfo.DirectoryName,"; result.Codigo += " String.Format(geraArquivo.Leiaute.PadraoNomeArquivo, String.Format(template, ++i, DateTime.Now)));"; result.Codigo += " doc.Save(file);"; result.Codigo += " }"; result.Codigo += " }"; result.Codigo += "}"; result.TipoArquivo = Enuns.UniBot.Leiaute.TipoArquivo.MapaResumo; result.Save(); } else result = list[0] as ILeiaute; return result; }
/// <summary> /// Cria um leiaute completo para a geração de um arquivo /// </summary> /// <returns></returns> private ILeiaute GetLeiaute() { ILeiaute result = null; string descricao = "Produto Base"; //------------------------------------------------------------------ // Pesquisar pelo leiaute, se encontrar, não precisa criar um novo //------------------------------------------------------------------ IList<ILeiaute> list = new Exportacao().Find<ILeiaute>(new Where { { "Descricao", descricao } }); if(list.Count == 0) { #region base do leiaute result = new Exportacao(); result.Descricao = descricao; result.PadraoNomeArquivo = "Produto_{date:dd-mm-yyyy}.txt"; result.Codigo = @"SELECT GUID, EGUID, '80394498-2bf4-465b-8f65-4c1d1ef6249f' AS GrupoItem, '41b1def1-22d5-4913-886b-266095a4dbdc' AS NCM, IndicadorArrTrunc, IndicadorProdProTerc, Descricao FROM cad_Item"; #endregion #region headers result.Headers.Add(new Header { De = "1", Tamanho = 36, Nome = "GUID" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 20, Nome = "EGUID" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 36, Nome = "GrupoItem" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 36, Nome = "NCM" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 1, Nome = "IndicadorArrTrunc" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 1, Nome = "IndicadorProdProTerc" }); result.Headers.Add(new Header { De = (result.Headers[result.Headers.Count - 1].Ate + 1).ToString(), Tamanho = 50, Nome = "Descricao" }); #endregion result.TipoArquivo = Enuns.UniBot.Leiaute.TipoArquivo.Produto; result.Save(); } else result = list[0] as ILeiaute; return result; }