2 using System.Collections.Generic;
34 public string _PaisNombre
36 get {
return _cPaisNombre; }
37 set { _cPaisNombre = value; }
39 private string _cPaisNombre =
"";
45 public string _RutaNombre
47 get {
return _cRutaNombre; }
48 set { _cRutaNombre = value; }
50 private string _cRutaNombre =
"";
56 public string _VendedorNombre
58 get {
return _cVendedorNombre; }
59 set { _cVendedorNombre = value; }
61 private string _cVendedorNombre =
"";
67 public string _TarifaNombre
69 get {
return _cTarifaNombre; }
70 set { _cTarifaNombre = value; }
72 private string _cTarifaNombre =
"";
78 public string _ActividadNombre
80 get {
return _cActividadNombre; }
81 set { _cActividadNombre = value; }
83 private string _cActividadNombre =
"";
89 public string _IdiomaNombre
91 get {
return _cIdiomaNombre; }
92 set { _cIdiomaNombre = value; }
94 private string _cIdiomaNombre =
"";
100 public override object _Parent
102 get {
return loParent; }
107 #endregion PROPIEDADES 110 #region CONSTRUCTORES 130 loDestinatarioNuevo._cEmpresa = this._cEmpresa;
131 loDestinatarioNuevo._cCodigoEntidad = this._cCodigoEntidad;
132 loDestinatarioNuevo._nLinea = this._nLinea;
133 loDestinatarioNuevo._cCodigo = this._cCodigo;
134 loDestinatarioNuevo._cNombre = this._cNombre;
135 loDestinatarioNuevo._cCif = this._cCif;
136 loDestinatarioNuevo._cDireccion = this._cDireccion;
137 loDestinatarioNuevo._cCodPos = this._cCodPos;
138 loDestinatarioNuevo._cPoblacion = this._cPoblacion;
139 loDestinatarioNuevo._cProvincia = this._cProvincia;
140 loDestinatarioNuevo._cPaisNombre = this._cPaisNombre;
141 loDestinatarioNuevo._cTelefono = this._cTelefono;
142 loDestinatarioNuevo._cEmail = this._cEmail;
143 loDestinatarioNuevo._cRutaNombre = this._cRutaNombre;
144 loDestinatarioNuevo._cVendedorNombre = this._cVendedorNombre;
145 loDestinatarioNuevo._cTarifaNombre = this._cTarifaNombre;
146 loDestinatarioNuevo._cActividadNombre = this._cActividadNombre;
147 loDestinatarioNuevo._cIdiomaNombre = this._cIdiomaNombre;
149 return loDestinatarioNuevo;
153 #endregion CONSTRUCTORES 156 #region MÉTODOS PROTECTED 164 string lcEmpresa = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_empresa"));
167 if (!Int32.TryParse(
this._Codigo.Trim(), out lnCodigo))
170 DataTable ldtClientePotencial =
new DataTable();
172 string lcSql =
"SELECT pr.codigo as codigo, " +
173 DB.SQLNvl(
"pr.nombre",
"SPACE(120)") +
" as nombre, " +
174 DB.SQLNvl(
"pr.cif",
"SPACE(15)") +
" as cif, " +
175 DB.SQLNvl(
"pr.direccion",
"SPACE(50)") +
" as direccion, " +
176 DB.SQLNvl(
"pr.codpost",
"SPACE(10)") +
" as codpost, " +
177 DB.SQLNvl(
"pr.poblacion",
"SPACE(30)") +
" as poblacion, " +
178 DB.SQLNvl(
"pr.provincia",
"SPACE(30)") +
" as provincia, " +
179 DB.SQLNvl(DB.SQLIif(
"pr.mobil!=' '",
"pr.mobil",
"pr.telefono"),
"SPACE(15)") +
" as telefono, " +
180 DB.SQLNvl(
"pr.email",
"SPACE(150)") +
" as email, " +
181 DB.SQLNvl(
"pai.nombre",
"SPACE(30)") +
" as paisnombre, " +
182 DB.SQLNvl(
"r.nombre",
"SPACE(30)") +
" as rutanombre, " +
183 DB.SQLNvl(
"v.nombre",
"SPACE(50)") +
" as vendedornombre," +
184 DB.SQLNvl(
"tr.nombre",
"SPACE(30)") +
" as tarifanombre, " +
185 DB.SQLNvl(
"a.nombre",
"SPACE(30)") +
" as actividadnombre, " +
186 DB.SQLNvl(
"id.nombre",
"SPACE(30)") +
" as idiomanombre " +
187 "from " + DB.SQLDatabase(
"gestion",
"prclient") +
" pr " +
188 "left join " + DB.SQLDatabase(
"comunes",
"paises") +
" pai on pai.codigo=pr.pais " +
189 "left join " + DB.SQLDatabase(
"gestion",
"rutas") +
" r on r.codigo=pr.ruta " +
190 "left join " + DB.SQLDatabase(
"gestion",
"vendedor") +
" v on v.codigo=pr.vendedor " +
191 "left join " + DB.SQLDatabase(
"gestion",
"tarifas") +
" tr on tr.codigo=pr.tarifa " +
192 "left join " + DB.SQLDatabase(
"gestion",
"activi") +
" a on a.codigo=pr.activi " +
193 "left join " + DB.SQLDatabase(
"gestion",
"idioma") +
" id on id.empresa=" + DB.SQLString(lcEmpresa) +
" and id.codigo=pr.idioma "+
194 "where pr.codigo = " + lnCodigo.ToString();
195 bool llOk = DB.SQLExec(lcSql, ref ldtClientePotencial);
197 if (ldtClientePotencial.Rows.Count > 0)
199 this._Nombre = Convert.ToString(ldtClientePotencial.Rows[0][
"nombre"]);
200 this._Cif = Convert.ToString(ldtClientePotencial.Rows[0][
"cif"]);
201 this._Direccion = Convert.ToString(ldtClientePotencial.Rows[0][
"direccion"]);
202 this._CodPos = Convert.ToString(ldtClientePotencial.Rows[0][
"codpost"]);
203 this._Poblacion = Convert.ToString(ldtClientePotencial.Rows[0][
"poblacion"]);
204 this._Provincia = Convert.ToString(ldtClientePotencial.Rows[0][
"provincia"]);
205 this._PaisNombre = Convert.ToString(ldtClientePotencial.Rows[0][
"paisnombre"]);
206 this._Telefono = Convert.ToString(ldtClientePotencial.Rows[0][
"telefono"]);
207 this._Email = Convert.ToString(ldtClientePotencial.Rows[0][
"email"]);
208 this._RutaNombre = Convert.ToString(ldtClientePotencial.Rows[0][
"rutanombre"]);
209 this._TarifaNombre = Convert.ToString(ldtClientePotencial.Rows[0][
"tarifanombre"]);
210 this._VendedorNombre = Convert.ToString(ldtClientePotencial.Rows[0][
"vendedornombre"]);
211 this._ActividadNombre = Convert.ToString(ldtClientePotencial.Rows[0][
"actividadnombre"]);
212 this._IdiomaNombre = Convert.ToString(ldtClientePotencial.Rows[0][
"idiomanombre"]);
219 if (loManteTRelDestinatarios._ewMantePrincipal != null)
232 this._Destino = ldtClientePotencial.Rows.Count > 0 ? Convert.ToString(ldtClientePotencial.Rows[0][
"email"]) :
"";
233 this._Email = this._Destino;
244 string lcDireccion =
"";
245 if (ldtClientePotencial.Rows.Count > 0)
246 lcDireccion = Convert.ToString(ldtClientePotencial.Rows[0][
"direccion"]).Trim() +
" " +
247 Convert.ToString(ldtClientePotencial.Rows[0][
"codpost"]).Trim() +
" " +
248 Convert.ToString(ldtClientePotencial.Rows[0][
"poblacion"]).Trim() +
" " +
249 Convert.ToString(ldtClientePotencial.Rows[0][
"provincia"]).Trim();
250 this._Destino = lcDireccion;
264 FUNCTIONS._DisposeDatatable(ldtClientePotencial);
270 #endregion MÉTODOS PROTECTED 277 #region CONSTRUCTORES 297 this._Claves._Empresa._Valor = this._lcEmpresa;
299 this._Claves._Empresa._Valor = tcCodigo;
301 this._Claves._CodigoEntidad._Valor = tcCodigo;
307 #endregion CONSTRUCTORES 310 #region MÉTODOS PROTECTED OVERRIDE 320 base.CrearEstructura();
334 _Def_ClientePotencial.
_Error_Validar_Dato =
"El código de cliente potencial indicado no existe.";
336 _Def_ClientePotencial.
_Error_Duplicados =
"El código de cliente potencial ya existe.";
341 _Def_ClientePotencial.
_Browser._Campos =
"Codigo, Nombre, Cif, Direccion, CodPost, Poblacion, Provincia, Email, Telefono, Mobil, Tarifa, Ruta, Vendedor, activi";
342 _Def_ClientePotencial.
_Browser._Campo_Predet =
"Nombre";
343 _Def_ClientePotencial.
_Browser._Clave =
"Codigo";
344 _Def_ClientePotencial.
_Browser._DataBase =
"Gestion";
345 _Def_ClientePotencial.
_Browser._Tabla =
"Prclient";
346 _Def_ClientePotencial.
_Browser._Titulo =
"Listado de clientes potenciales";
347 _Def_ClientePotencial.
_Browser._Titulos_Campos =
"Código,Nombre,CIF,Dirección,C.Postal,Población,Provincia,Email,Telefono,Móvil,Tarifa,Ruta,Vendedor,Actividad";
348 _Def_ClientePotencial.
_Browser.NombreMantenimiento =
"AGENDA";
351 _Def_ClientePotencial.
_Browser._Tooltip =
"Acceder a la consulta de clientes potenciales";
353 _Def_ClientePotencial.
_Browser._Tooltip =
"Acceder a la consulta de clientes potenciales o a la consulta de grupos de destinatarios clientes potenciales";
355 _Def_ClientePotencial.
_Browser._Seleccion_Multiple =
true;
360 _Def_ClientePotencial.
_Mante._NombreManteNet =
"AGENDA";
361 _Def_ClientePotencial.
_Mante._Tooltip =
"Acceder al mantenimiento de clientes potenciales";
385 List<string> lstPropiedadesOrdenadas =
new List<string>() {
"_CodigoEntidad",
"_Linea",
"_Codigo",
"_Nombre",
"_Cif",
"_Direccion",
"_CodPos",
386 "_Poblacion",
"_Provincia",
"_PaisNombre",
"_Telefono",
"_Email",
387 "_RutaNombre",
"_VendedorNombre",
"_TarifaNombre",
"_ActividadNombre",
"_IdiomaNombre"};
393 List<string> lstCamposComunicados =
new List<string>() {
"_Destino" };
394 lstPropiedadesOrdenadas.InsertRange(2, lstCamposComunicados);
398 lstCamposComunicados =
new List<string>() {
"_FechaEnvio" };
399 lstPropiedadesOrdenadas.InsertRange(lstPropiedadesOrdenadas.Count, lstCamposComunicados);
402 this.ordenarPropiedades(lstPropiedadesOrdenadas);
408 #endregion MÉTODOS PROTECTED OVERRIDE 411 #region MÉTODOS PÚBLICOS OVERRIDE 420 this._bIsLoading =
true;
422 string lcEmpresa = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_empresa"));
424 DataTable ldtClientesPotenciales =
new DataTable();
426 string lcCodigoEntidad = this._ewMantePrincipal._Codigo;
427 string lcCondiWhere =
"";
431 this._Claves._Empresa._Valor = this._lcEmpresa;
432 lcCondiWhere =
" dest.empresa=" + DB.SQLString(this._lcEmpresa) +
" and dest.codigo=" + DB.SQLString(lcCodigoEntidad) +
" ";
436 this._Claves._Empresa._Valor = lcCodigoEntidad;
437 lcCondiWhere =
" dest.codigo=" + DB.SQLString(lcCodigoEntidad) +
" ";
440 this._Claves._CodigoEntidad._Valor = lcCodigoEntidad;
446 string lcSql =
"SELECT RTRIM(LTRIM(CAST(dest.clave as char))) as codigo, " +
447 DB.SQLNvl(
"pr.nombre",
"SPACE(120)") +
" as nombre, " +
448 DB.SQLNvl(
"pr.cif",
"SPACE(15)") +
" as cif, " +
449 DB.SQLNvl(
"pr.direccion",
"SPACE(50)") +
" as direccion, " +
450 DB.SQLNvl(
"pr.codpost",
"SPACE(10)") +
" as codpost, " +
451 DB.SQLNvl(
"pr.poblacion",
"SPACE(30)") +
" as poblacion, " +
452 DB.SQLNvl(
"pr.provincia",
"SPACE(30)") +
" as provincia, " +
453 DB.SQLNvl(DB.SQLIif(
"pr.mobil!=' '",
"pr.mobil",
"pr.telefono"),
"SPACE(15)") +
" as telefono, " +
454 DB.SQLNvl(
"pr.email",
"SPACE(150)") +
" as email, " +
455 DB.SQLNvl(
"pai.nombre",
"SPACE(30)") +
" as paisnombre, " +
456 DB.SQLNvl(
"r.nombre",
"SPACE(30)") +
" as rutanombre, " +
457 DB.SQLNvl(
"v.nombre",
"SPACE(50)") +
" as vendedornombre," +
458 DB.SQLNvl(
"tr.nombre",
"SPACE(30)") +
" as tarifanombre, " +
459 DB.SQLNvl(
"a.nombre",
"SPACE(30)") +
" as actividadnombre, " +
460 DB.SQLNvl(
"id.nombre",
"SPACE(30)") +
" as idiomanombre " +
461 "from " + DB.SQLDatabase(
"gestion", this._Tabla) +
" dest " +
462 "left join " + DB.SQLDatabase(
"gestion",
"prclient") +
" pr on pr.codigo=cast(dest.clave as int) " +
463 "left join " + DB.SQLDatabase(
"comunes",
"paises") +
" pai on pai.codigo=pr.pais " +
464 "left join " + DB.SQLDatabase(
"gestion",
"rutas") +
" r on r.codigo=pr.ruta " +
465 "left join " + DB.SQLDatabase(
"gestion",
"vendedor") +
" v on v.codigo=pr.vendedor " +
466 "left join " + DB.SQLDatabase(
"gestion",
"tarifas") +
" tr on tr.codigo=pr.tarifa " +
467 "left join " + DB.SQLDatabase(
"gestion",
"activi") +
" a on a.codigo=pr.activi " +
468 "left join " + DB.SQLDatabase(
"gestion",
"idioma") +
" id on id.empresa=" + DB.SQLString(lcEmpresa) +
" and id.codigo=pr.idioma " +
469 "where " + lcCondiWhere;
471 bool llOk = DB.SQLExec(lcSql, ref ldtClientesPotenciales);
472 string lcClientePotencial =
"";
478 lcClientePotencial = loDestinatario._Codigo.Trim();
479 DataRow[] laRows = ldtClientesPotenciales.Select(
"codigo='"+lcClientePotencial+
"'");
480 if (laRows.Count() > 0)
482 loDestinatario._Nombre = Convert.ToString(laRows[0][
"nombre"]);
483 loDestinatario._Cif = Convert.ToString(laRows[0][
"cif"]);
484 loDestinatario._Direccion = Convert.ToString(laRows[0][
"direccion"]);
485 loDestinatario._CodPos = Convert.ToString(laRows[0][
"codpost"]);
486 loDestinatario._Poblacion = Convert.ToString(laRows[0][
"poblacion"]);
487 loDestinatario._Provincia = Convert.ToString(laRows[0][
"provincia"]);
488 loDestinatario.
_PaisNombre = Convert.ToString(laRows[0][
"paisnombre"]);
489 loDestinatario._Telefono = Convert.ToString(laRows[0][
"telefono"]);
490 loDestinatario._Email = Convert.ToString(laRows[0][
"email"]);
491 loDestinatario.
_RutaNombre = Convert.ToString(laRows[0][
"rutanombre"]);
492 loDestinatario.
_TarifaNombre = Convert.ToString(laRows[0][
"tarifanombre"]);
493 loDestinatario.
_VendedorNombre = Convert.ToString(laRows[0][
"vendedornombre"]);
494 loDestinatario.
_ActividadNombre = Convert.ToString(laRows[0][
"actividadnombre"]);
495 loDestinatario.
_IdiomaNombre = Convert.ToString(laRows[0][
"idiomanombre"]);
499 FUNCTIONS._DisposeDatatable(ldtClientesPotenciales);
501 this._bIsLoading =
false;
507 #endregion MÉTODOS PÚBLICOS OVERRIDE string _ActividadNombre
Nombre actividad
ManteTRel de destinatarios de tipo 'Clientes potenciales'
sage.ew.botones.btMante _Mante
Mantenimiento para la columna del grid o campo enlazado
OrigenEmailClientesPotenciales
Enumeración que define los posibles orígenes de dirección email a utilizar en envío de comunicados em...
bool _PermiteDuplicados
Indica si se permiten valores duplicados comparando el campo con todos los registros cargados ...
string _Validar_Dato_Clave
Clave por la cual se buscará el valor a la tabla de validación
int _DestinoEnvio1
Tipo de dirección email a utilizar (caso comunicado tipo email), o tipo de dirección postal a utiliza...
DestinatariosClientesPotenciales(TipoParentDestinatarios toTipoParentDestinatarios)
Inicializa una nueva intancia de la clase DestinatariosClientesPotenciales
Clase ManteTRel base utilizada para todos los tipos de destinatarios (destinatarios clientes...
string _IdiomaNombre
Nombre idioma
string _Validar_Dato_BaseDatos
Base de datos donde se validará si el dato existe
Browser, basat en sage.ew.objetos.ewbutton
Es como el tipo de entrada asientos pero por negocio, sin formulario, pq quiero que me haga las propu...
string _PaisNombre
Nombre país
TipoEnvioComunicados _TipoEnvio
string _Validar_Dato_Tabla
Tabla donde se validará si el dato existe
override void _Load()
Carga del ManteTRel de destinatarios de tipo proveedor, se carga el ManteTRel el único campo físico q...
string _VendedorNombre
Nombre vendedor
sage.ew.botones.btBrowser _Browser
Browser para la columna del grid o campo enlazado
OrigenDirPostalClientesPotenciales
Enumeración que define los posibles orígenes de dirección postal a utilizar en envío de comunicados i...
Definición de los objetos campo para las tablas relacionadas
Updatable
Actualizable. Existe el campo en la tabla.
override void CrearEstructura()
Estructura del mantetrel de destinatarios clientes potenciales.
override void rellenarRestoCampos()
Rellenar resto de campos del registro a partir del código.
DestinatarioClientePotencial()
Inicializa una nueva intancia de la clase DestinatarioClientePotencial.
TipoParentDestinatarios
Enumeración que define los posibles tipos de entidades padres que pueden acoger destinatarios, en nuestro caso, grupos de destinatarios y comunicados.
TipoParentDestinatarios _TipoParentDestinatarios
Tipo de entidad contenedora de destinatarios.
Definir la estructura de las líneas de destinatarios en un grupo de destinatarios o en un comunicado ...
Muestra el mantenimiento correspondiente a _Form con el registro correspondiente al _Codigo ...
Editable
Premitirá modificar su valor
string _Validar_Dato_CampoTRel_Asignar
Destino del valor recuperado en la consulta de validación
string _RutaNombre
Nombre ruta
TipoEnvioComunicados
Enumeración que define los posibles tipos de envío en comunicados.
string _Validar_Dato_Campos
Campos que se recuperarán en la consulta de validación
string _Error_Duplicados
Mensaje de error que se mostrará al insertar un valor duplicado
Clase de negocio para el mantenimiento de comunicados.
DestinatariosClientesPotenciales(TipoParentDestinatarios toTipoParentDestinatarios, string tcCodigo)
Inicializa una nueva intancia de la clase DestinatariosClientesPotenciales
string _TarifaNombre
Nombre tarifa
gridColumnsTypes
Definición de los tipos de columnas para los grids o campos enlazados
Interface utilizada por los mantenimientos que tienen grid de destinatarios (mantenimiento de grupos ...
Interface mantetrel destinatarios con las propiedades y métodos de la clase ManteTRel que utilizaremo...
DestinatarioClientePotencial _Clonar()
Método para clonar un objeto detinatario de tipo cliente potencial.
Visible
Visible en el grid
bool _Validar_Asignar_Cargando
Indica si se buscará el dato en la tabla correspondiente mientras se ejecuta el _Load() ...
string _Error_Validar_Dato
Mensaje de error que se mostrará al insertar un dato no válido