2 using System.Collections.Generic;
3 using System.ComponentModel;
17 namespace sage.ew.formul.Forms
25 #region PROPIEDADES PUBLICAS 31 public DateTime? _Fecha {
get;
set; }
35 public string _Banco {
get;
set; }
39 public string _Operario {
get;
set; }
43 public string _Fpago {
get;
set; }
47 public decimal _Cambio {
get;
set; }
51 public string _Proveedor =
"";
55 public bool _lAsiento =
false;
64 #region PROPIEDADES PRIVADAS 67 private string _lcCajaTPV = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_cajatpv")).Trim();
68 private string _lcOperarioTPV = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_operariotpv")).Trim();
69 private bool _lNoHacerCambio =
false;
70 private string _lcMonedaEmpresa = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_moneda")).Trim();
71 private DateTime? fechaemision = null;
84 InitializeComponent();
86 this._MostrarAccesoFavoritos =
false;
87 this._MostrarCrearAccesoDirecto =
false;
88 this._MostrarGestionAccesos =
false;
101 public frmPago(
string tcProveedor =
"",
bool tlAsiento =
false,
PrevisionPago prv = null,
string tcBanco =
"",
bool lbUnica =
true, DateTime? tdFechaVencim = null)
103 InitializeComponent();
105 this._MostrarAccesoFavoritos =
false;
106 this._MostrarCrearAccesoDirecto =
false;
107 this._MostrarGestionAccesos =
false;
109 this._Proveedor = tcProveedor;
110 this._lAsiento = tlAsiento;
115 fechaemision = prv._Fecha_Emision;
120 this.divisaDocumentos1._Documento = prv;
122 prv._Fecha_Vencim = tdFechaVencim;
124 this.divisaDocumentos1.Visible =
true;
125 this.divisaDocumentos1._ReadOnlyoCmbDivisa =
true;
126 if (this.divisaDocumentos1._Divisa == _lcMonedaEmpresa)
128 this.divisaDocumentos1.Visible =
false;
129 this.ewlabel4.Visible =
false;
133 chkFechaVencim.Visible =
false;
141 #region METODOS PRIVADOS 149 string lcCtaCobroEfect = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_ctacobroefec"));
153 if (divisaDocumentos1._Divisa == _lcMonedaEmpresa)
155 ewfCobro.Top = ewOperario.Top;
157 ewOperario.Top = ewBanco.Top;
159 ewBanco.Top = divisaDocumentos1.Top + 5;
160 txtBanco.Top = divisaDocumentos1.Top + 5;
177 if (!
string.IsNullOrWhiteSpace(this._lcCajaTPV))
182 this.ewOperario.Visible =
true;
183 this.txtOperario1.Visible =
true;
184 this.ewfCobro.Visible =
true;
189 lcDivisa = divisaDocumentos1._Divisa;
190 if (String.IsNullOrEmpty(lcDivisa)) lcDivisa = _lcMonedaEmpresa;
196 this.
txtBanco.
_Codigo = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_ctacajatpv"));
199 this.txtOperario1._Codigo = this._lcOperarioTPV;
201 string lcFormaCobroEfectivo =
"";
202 string lcCuentaCobroEfectivo =
"";
209 if (!
string.IsNullOrWhiteSpace(lcCuentaCobroEfectivo))
212 if (!
string.IsNullOrWhiteSpace(lcFormaCobroEfectivo))
218 this.ewOperario.Visible =
false;
219 this.txtOperario1.Visible =
false;
220 this.ewfCobro.Visible =
false;
226 this.divisaDocumentos1._CambioCotizacion +=
new objetos.UserControls.DivisaDocumentos._CambioCotizacion_Handler(divisaDocumentos1__CambioCotizacion);
227 this.
txtFecha.ValueChanged +=
new EventHandler(txtFecha_ValueChanged);
231 private void divisaDocumentos1__CambioCotizacion(
object sender,
DivisaEventArgs e)
235 this.divisaDocumentos1._Divisa = divisa;
242 private void _ActualizarCambio()
246 if (this.divisaDocumentos1._Divisa != _lcMonedaEmpresa)
249 decimal ldCambio = loProv.
_CambioPactado(this.divisaDocumentos1._Divisa, Convert.ToDateTime(
this.txtFecha.Value));
250 this.divisaDocumentos1._Cambio = ldCambio;
252 decimal lnValCambio = loProv.
_CambioPactado(this.divisaDocumentos1._Divisa, Convert.ToDateTime(
this.txtFecha.Value), out leTipoCambio);
253 this.divisaDocumentos1._TipoCambio = leTipoCambio;
254 this.divisaDocumentos1._Documento._oDivisa._Codigo = this.divisaDocumentos1._Divisa;
255 this.divisaDocumentos1.oNudCotizaValue = divisaDocumentos1._Cambio;
263 private void txtBanco__Codigo_Cambiado()
265 if (!
string.IsNullOrWhiteSpace(this._lcCajaTPV))
272 private void txtFormaCobro__Codigo_Cambiado()
274 if (!
string.IsNullOrWhiteSpace(this._lcCajaTPV))
283 private void Buscar_FormaPago(
bool tlDesde,
string tcCodigo)
285 if (
string.IsNullOrWhiteSpace(tcCodigo))
288 if (this._lNoHacerCambio)
297 string lcCuenta = Convert.ToString(loFCob._Campo(
"cuenta"));
300 DialogResult loResult = this._MessageBox(
"La cuenta de pago de esta forma de pago es diferente a la introducida.\n¿ Desea cambiarla ?", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1, DialogResult.No);
301 if (loResult == DialogResult.Yes)
303 this._lNoHacerCambio =
true;
305 this._lNoHacerCambio =
false;
316 string lcCuenta =
"";
317 if (!
string.IsNullOrWhiteSpace(lcFormaCobro))
319 this._lNoHacerCambio =
true;
321 this._lNoHacerCambio =
false;
330 lcDivisa = divisaDocumentos1._Divisa;
331 if (
String.IsNullOrEmpty(lcDivisa)) lcDivisa = _lcMonedaEmpresa;
333 loFCob._Devolver_Datos_FCobro_Efectivo_Caja_Activa(ref lcFormaCobro, ref lcCuenta, lcDivisa);
334 if (!
string.IsNullOrWhiteSpace(lcFormaCobro))
336 this._lNoHacerCambio =
true;
338 this._lNoHacerCambio =
false;
346 private void txtFecha_ValueChanged(
object sender, EventArgs e)
350 chkFechaVencim.Checked =
false;
358 private void btDocCancelar1_Click(
object sender, EventArgs e)
369 private void btDocAceptar1_Click(
object sender, EventArgs e)
372 if (!this._Comprobaciones_Previas())
374 this.DialogResult = DialogResult.None;
378 _Fecha = Convert.ToDateTime(this.
txtFecha.Text);
380 _Operario = Convert.ToString(this.txtOperario1._Codigo);
382 _Cambio = Convert.ToDecimal(this.divisaDocumentos1._Cambio);
386 private bool _Comprobaciones_Previas()
389 string lcMensaje =
"", lcMensaje2 =
"";
393 if (
string.IsNullOrWhiteSpace(lcMensaje))
396 lcMensaje =
"Es necesario especificar la cuenta de banco o caja.";
399 if (
string.IsNullOrWhiteSpace(lcMensaje))
401 if (!
string.IsNullOrWhiteSpace(this._lcCajaTPV) &&
string.IsNullOrWhiteSpace(this.txtOperario1._Codigo))
402 lcMensaje =
"No se ha entrado el operario.";
405 if (
string.IsNullOrWhiteSpace(lcMensaje))
407 if (!
string.IsNullOrWhiteSpace(this._lcCajaTPV) &&
string.IsNullOrWhiteSpace(this.
txtFormaCobro.
_Codigo))
408 lcMensaje =
"No se puede generar el pago si no se introduce la forma de pago.";
411 if (
string.IsNullOrWhiteSpace(lcMensaje))
413 string lcCuentaBanco = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_banco"));
414 string lcCuentaCaja = Convert.ToString(EW_GLOBAL._GetVariable(
"wc_caja"));
415 string lcCuentaEfec_dto = EW_GLOBAL._GetVariable(
"wc_efec_dto").ToString();
416 string lcCtapuente = EW_GLOBAL._GetVariable(
"wc_ctapuente").ToString();
420 lcMensaje2 =
"Esta cuenta no pertenece a un banco o caja.\n\n¿ Desea continuar con esta cuenta ?";
425 llOk =
string.IsNullOrWhiteSpace(lcMensaje);
428 this._MessageBox(lcMensaje, MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1, DialogResult.None);
431 llOk =
string.IsNullOrWhiteSpace(lcMensaje2);
434 DialogResult loDlgResult = this._MessageBox(lcMensaje2, MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button2, DialogResult.None);
435 llOk = (loDlgResult == DialogResult.Yes);
446 private void chkFechaVencim_Click(
object sender, EventArgs e)
448 if (chkFechaVencim.Checked)
454 txtFecha.Value = Convert.ToDateTime(DateTime.Now);
456 divisaDocumentos1._Documento = prvPago;
string _Codigo
Código seleccionado por el usuario
override object _Campo(string tcNombreCampo)
Override del metodo _Campo para los mantenimientos
eTipoCambio
Tipos de cambio de la divisa
static decimal _CambioPactado(string tcProveedor, string tcDivisa, DateTime tdtFecha)
Devuelve el cambio que se aplica al proveedor, si tiene un cambio fijado y la fecha límite de cambio ...
Clase de negocio Proveedor
bool _PrimeraVez
Propiedad que servirá para que sólo se consulten los datos y formen los grids con datos una vez...
DateTime _Fecha_Vencim
Fecha vencimiento de previsión
Clase para las previsiones de pago de proveedores
Definición del txtcodlabel para cuentas contables de bancos (PE-85500)
virtual string _Codigo
Valor del campo clave que
virtual void _Refresh()
Método para forzar el refresco de los datos mostrados teniendo en cuenta los nuevos valores de las pr...
Definición txtcodlabel para fechas
DateTime _Fecha_Pago
Fecha de pago
DateTime _Fecha_Emision
Fecha emisión de previsión
string _Divisa
Código de divisa
Clase de argumentos de respuesta para eventos de divisa