7 using System.Collections.Generic;
19 private bool bSoloLectura =
false;
23 public bool _bSoloLectura
25 get {
return bSoloLectura; }
26 set { bSoloLectura = value; }
29 private readonly
string cEjercicio =
string.Empty;
30 private string tablaExtendida =
"CTRL_PEDV";
32 private List<string> lisEntregas =
new List<string>();
33 private IBaseDA _extensionDocPedVentaDA;
37 protected internal bool _ControlBorrados =
false;
42 protected internal bool _ControlBorradosTablaControl =
false;
47 protected internal int _TipoBorrado = 0;
52 protected internal string _DeleteNetID =
string.Empty;
64 cEjercicio = EW_GLOBAL._GetVariable(
"wc_any").ToString();
66 _extensionDocPedVentaDA = baseDA;
69 #endregion Constructors 72 #region Public Methods 81 public override bool _Load(
string tcEmpresa,
string tcNumero,
string tcLetra =
"")
83 bool llOk = base._Load(tcEmpresa, tcNumero, tcLetra);
91 List<string> listaID =
new List<string>
98 bSoloLectura = _offlineConfig.
RevisarTablaControl(tablaExtendida, tcEmpresa, tcNumero,
"Letra", tcLetra);
101 _ControlBorradosTablaControl =
false;
102 lisEntregas =
new List<string>();
106 _ControlBorrados = _offlineConfig.
RevisarTablaControl(tablaExtendida, tcEmpresa, tcNumero,
"Letra", tcLetra);
107 _ControlBorradosTablaControl =
true;
115 lisEntregas.Add(item.
_Asi);
131 bool llOk = base._Delete();
138 if (_ControlBorrados)
140 string where =
string.Empty;
142 where = $
@" Where empresa = {_extensionDocPedVentaDA.SQLString(((this as _ExtensionDocVentaDocumento)._Documento as ewDocVentaPED)._Empresa)} and numero = {_extensionDocPedVentaDA.SQLString(((this as _ExtensionDocVentaDocumento)._Documento as ewDocVentaPED)._Numero, 10, tlIzquierda: true)} and letra = {_extensionDocPedVentaDA.SQLString(((this as _ExtensionDocVentaDocumento)._Documento as ewDocVentaPED)._Letra, 2)}";
144 _offlineConfig.
InsertDeleteNet(
"C_PEDIVE",
"GESTION",
"C_PEDIVE", _TipoBorrado, cEjercicio, where);
149 if (_ControlBorradosTablaControl)
172 bool llOk = base._Delete_Linea(toLineaDocumento);
179 if (_ControlBorrados)
181 string claveTab =
"C_PEDIVE";
182 string where =
" Where empresa = " + _extensionDocPedVentaDA.SQLString(toLineaDocumento.
_Empresa) +
183 " and numero = " + _extensionDocPedVentaDA.SQLString(toLineaDocumento.
_Numero, 10, tlIzquierda:
true) +
184 " and letra = " + _extensionDocPedVentaDA.SQLString(toLineaDocumento.
_Letra, 2) +
185 " and linia = " + _extensionDocPedVentaDA.SQLString(toLineaDocumento.
_Linea);
187 _offlineConfig.
InsertDeleteNet(_DeleteNetID, claveTab,
"GESTION",
"D_PEDIVE", _TipoBorrado, cEjercicio, where);
198 public override bool _Save(
bool tbForzarGuardarLineas =
false)
200 bool llOk = base._Save(tbForzarGuardarLineas);
205 if (_ControlBorrados)
207 List<string> newlisEntregas =
new List<string>();
212 newlisEntregas.Add(item.
_Asi);
215 string claveTab =
"C_PEDIVE";
217 string where =
string.Empty;
219 foreach (
string item
in lisEntregas)
221 if (!newlisEntregas.Contains(item))
223 string lcEmpresa = _Documento._Empresa;
225 where = $
@" Where empresa = {_extensionDocPedVentaDA.SQLString(lcEmpresa)} and asi = {_extensionDocPedVentaDA.SQLString(item)}";
226 _offlineConfig.
InsertDeleteNet(_DeleteNetID, claveTab,
"GESTION",
"ENTRE_PV", _TipoBorrado, newORDEN, cEjercicio, where);
231 lisEntregas = newlisEntregas;
251 return base._Abandonar_Documento(tbNoValidarDocumento, tlSalirDocumento);
262 return _bSoloLectura;
268 #endregion Public Methods override bool _Delete()
Método que se ejecuta cuando el usuario borra un documento
DataAccess.Model.deletenet InsertDeleteNet(string id, string claveTab, string baseDatos, string tabla, int tipo, int orden, string ejercicio, string where)
Inserta un registro en la tabla DeleteNet a través de la creación de un objeto de la clase deletenet ...
Clase que permite extender la funcionalidad en los documentos de venta para PaM y nuevos módulos...
Clase que permite extender la funcionalidad en los pedidos de venta para PaM y nuevos módulos...
override bool _Load(string tcEmpresa, string tcNumero, string tcLetra="")
Override del _Load para consultar si el documento es o no de solo lectura segun prioridades ...
string GenerarRandomId()
Generar id aleatorio para la tabla delete net y otras futuras, de 10 caracteres
bool RevisarTablaControl(string tcTabla, string tcEmpresa, string tcNumero, string tcCampo3="", string tcValor3="")
Revisar tabla de control
object Retrieve(Type T)
Resuelve objeto de tipo T
override bool _Save(bool tbForzarGuardarLineas=false)
Método que se ejecuta cuando el usuario guarda un documento
string _Asi
_Asi : Asiento
bool CondicionPrioridadDocumentos(List< string > lisTabrels)
Condición de prioridad de documentos
Es como el tipo de entrada asientos pero por negocio, sin formulario, pq quiero que me haga las propu...
Interficie mínima de las líneas (Mantener lo mas reducida posible)
Campos de los que se compone el filtro para filtrar en tabla control (CTRL_). Máximo un campo ...
bool DeleteTablaControlManten(string tabla, string valorCodigo, string campoCodigo="codigo", string ejercicio="", string campo3="", string valor3="")
Método que borra de la tabla extendida CTRL_ el registro eliminado
bool CondicionControlDocumentos(List< string > lisTabrels)
Condición de control de documentos
override bool _Validar_Solo_Lectura()
Validación de sólo lectura
Clase documento de PEDIDOS
ExtensionDocPedVenta(IBaseDA baseDA)
Inicializa una nueva instancia de la clase
Interfaz base de Acceso a datos
int GetNewOrdenDeleteNet(string claveTab)
Obtiene el siguiente orden del deletenet de la clave clavetab
EntregaPedido: Entrega a cuenta pedido de venta
TipoExecute
Tipos de ejecución de los métodos
Clase de negocio para la configuración del addon de offline
Extensión de documento para pedidos de venta
void _RecalcularRiesgoClienteOffline(string tcEmpresa, string tcCliente)
Recalcular el riesgo por cliente y empresa
static DependencyInjector Instance
Instancia
override bool _Abandonar_Documento(bool tbNoValidarDocumento=false, bool tlSalirDocumento=false)
Abandonar documento. Descarga líneas y limpia valores de propiedades...
override bool _Delete_Linea(IDocumentLinea toLineaDocumento)
Método que se ejecuta cuando el usuario borra una línea del documento.
Clase Inyector de dependencias para resolver las dependencias