Mail500.cs
1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using sage.ew.ewbase;
6 using sage.ew.db;
7 using System.Data;
8 using System.ComponentModel;
9 using sage.ew.interficies;
10 using sage.ew.ewbase.Clases;
11 using System.IO;
12 using sage.ew.global;
13 
14 namespace sage.ew.contabilidad
15 {
19  public class Mail500 : ewMante, IPrintableFile
20  {
21  private IDocPrintFile _oDocPrint = null;
22 
26  public enum TipoCarta
27  {
31  [DescriptionAttribute("FICHERO")]
32  Fichero = 0,
36  [DescriptionAttribute("REPORT")]
37  SageReports = 1
38  }
39 
43  public Mail500()
44  {
45  this._CargaPropiedades();
46  }
47 
52  public Mail500(String tcCodigo)
53  {
54  this._CargaPropiedades();
55  this._Codigo = tcCodigo;
56  }
57 
61  public TipoCarta _TipoCarta
62  {
63  get
64  {
65  TipoCarta loTipo = TipoCarta.Fichero;
66 
67  return _lisCampos.ContainsKey("TIPO_CARTA") && Enum.TryParse<TipoCarta>(Convert.ToString(_lisCampos["TIPO_CARTA"]._NewVal), out loTipo) ? loTipo : TipoCarta.Fichero;
68  }
69  set
70  {
71  if (_lisCampos.ContainsKey("TIPO_CARTA")) _lisCampos["TIPO_CARTA"]._NewVal = (Int32)value;
72  }
73  }
74 
78  public String _Report
79  {
80  get
81  {
82  return _lisCampos.ContainsKey("REPORT") ? Convert.ToString(_lisCampos["REPORT"]._NewVal) : String.Empty;
83  }
84  set
85  {
86  if (_lisCampos.ContainsKey("REPORT")) _lisCampos["REPORT"]._NewVal = value;
87  }
88  }
89 
93  public String _Fichero
94  {
95  get
96  {
97  return _lisCampos.ContainsKey("FICHERO") ? Convert.ToString(_lisCampos["FICHERO"]._NewVal) : String.Empty;
98  }
99  set
100  {
101  if (_lisCampos.ContainsKey("FICHERO")) _lisCampos["FICHERO"]._NewVal = value;
102  }
103  }
104 
105  #region IPrintableFile
106 
110  public String _PathFile
111  {
112  get
113  {
114  String lcFile = "";
115 
116  if (!String.IsNullOrEmpty(_Fichero))
117  {
118  if (File.Exists(_Fichero))
119  {
120  lcFile = _Fichero;
121  }
122  else if (File.Exists(Path.Combine(EW_GLOBAL._Empresa._ContabilidadRutaCartas.Trim(), _Fichero)))
123  {
124  lcFile = Path.Combine(EW_GLOBAL._Empresa._ContabilidadRutaCartas.Trim(), _Fichero);
125  }
126  }
127 
128  return lcFile;
129  }
130  }
131 
135  public IDocPrintFile _DocPrint
136  {
137  get
138  {
139  if (_oDocPrint == null) _oDocPrint = new DocPrintFile(this);
140  return _oDocPrint;
141  }
142  set
143  {
144  _oDocPrint = value;
145  }
146  }
147 
148 
149  #endregion IPrintableFile
150 
154  private void _CargaPropiedades()
155  {
156  // Asignamos las propiedades para MAIL500
157  this._lTodos = true;
158  this._Clave = "CODIGO";
159  this._Campo_Nombre = "ASUNTO";
160  this._DataBase = "GESTION";
161  this._Tabla = "MAIL500";
162  this._TituloMantenimiento = "Mantenimiento de formatos";
163  this._TituloCabecera = "Formatos";
164  this._TituloMenu = "Formato";
165 
166  this._Browser_Campos = "CODIGO, ASUNTO";
167  this._Browser_Titulos_Campos = "Código, Asunto";
168  this._Browser_Clave = "CODIGO";
169  this._Browser_Campo_Predet = "ASUNTO";
170 
171  this._FormManteBaseType = typeof(Forms.frmMail500);
172  this._Pantalla = "MAIL500";
173  }
174 
179  public override void _New(string tcCodigo = "")
180  {
181  base._New(tcCodigo);
182 
183  _TipoCarta = Mail500.TipoCarta.SageReports;
184  }
185 
190  public bool IsValidToDirectPrint()
191  {
192  FileInfo loInfo;
193 
194  if (!String.IsNullOrEmpty(_PathFile) && File.Exists(_PathFile))
195  {
196  loInfo = new FileInfo(_PathFile);
197  return _TipoCarta == TipoCarta.SageReports || loInfo.Extension.ToUpper() == ".FRX" ? false : true;
198  }
199 
200  return false;
201 
202  }
203 
208  public bool IsFOXFile()
209  {
210  FileInfo loInfo;
211 
212  if (!String.IsNullOrEmpty(_PathFile) && File.Exists(_PathFile))
213  {
214  loInfo = new FileInfo(_PathFile);
215 
216  return IsFile() && loInfo.Extension.ToUpper() == ".FRX";
217  }
218 
219  return false;
220  }
221 
226  public bool IsFile()
227  {
228  return _TipoCarta == TipoCarta.Fichero;
229  }
230  }
231 }
232 
Clase de negocio base para mantenimientos
Definition: clsEwBase.cs:1643
Clase pra la impresión directa de ficheros
Definition: DocPrintFile.cs:16
bool IsFOXFile()
Indica si el documento es un fichero de FOX
Definition: Mail500.cs:208
PE-96316 Clase utilizada para consultar los datos de mail500
Definition: Mail500.cs:19
Interfaz para imprimir un documento
Definition: IDocPrint.cs:324
Mail500()
Constructor vacío
Definition: Mail500.cs:43
Mail500(String tcCodigo)
Constructor
Definition: Mail500.cs:52
bool IsValidToDirectPrint()
Indica si el documento se puede imprimir por impresoraa directamente
Definition: Mail500.cs:190
Interfaz para la gstión de la impresión del documento
Definition: IDocPrint.cs:340
bool IsFile()
Indica si el documento es un fichero
Definition: Mail500.cs:226
TipoCarta
Tipo de carta
Definition: Mail500.cs:26
override void _New(string tcCodigo="")
Seleccionar tipo carta
Definition: Mail500.cs:179