-- mejora en manejo de dolares/pesos/dolares
This commit is contained in:
@@ -73,20 +73,7 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
ViewState["IDCtaContableAcreedorComplementaria"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
private bool UsaComplementaria
|
||||
{
|
||||
get
|
||||
{
|
||||
return Convert.ToBoolean(ViewState["UsaComplementaria"]);
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
ViewState["UsaComplementaria"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private int CveMonedaCuentaPago
|
||||
{
|
||||
get
|
||||
@@ -110,10 +97,9 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
UsaComplementaria = true;
|
||||
{
|
||||
CveMonedaCuentaPago = 0;
|
||||
rowComisiones.Visible = UsuarioActual.CveEmpresa.Contiene(1, 4, 5, 7, 11, 12, 72, 80, 126, 119, 122);
|
||||
rowComisiones.Visible = true;
|
||||
|
||||
CargaTipoTransaccion();
|
||||
CargaCuentas();
|
||||
@@ -318,17 +304,13 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
|
||||
if (CveIE > 0)
|
||||
{
|
||||
//GUARDA COMPROBANTE
|
||||
if (!filemove.Equals(""))
|
||||
{
|
||||
filemove.FilesMove(CveIE.ToString(), string.Format(@"{0}IE", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase: false);
|
||||
}
|
||||
|
||||
decimal Importe;
|
||||
decimal ImporteMN;
|
||||
decimal ImporteComision;
|
||||
decimal ImporteComisionMN;
|
||||
decimal AcumImporteMN = 0;
|
||||
decimal ImportePago, ImporteAcreedor;
|
||||
decimal ImporteBancosMN, ImporteAcreedorMN;
|
||||
bool TipoMovtoComision = false;
|
||||
int IdCtaContableOtrosGastos = 0;
|
||||
int CveConceptoDiferenciaCambiaria = 0;
|
||||
@@ -339,7 +321,8 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
Importe = gvr.FCTextBox("TxtAbonar").Text.ToDecimal();
|
||||
ImporteComision = gvr.FCTextBox("TxtComision").Text.ToDecimal();
|
||||
ImporteMN = Importe;
|
||||
ImporteAcreedor = Importe; ImportePago = Importe;
|
||||
ImporteAcreedorMN = Importe;
|
||||
ImporteBancosMN = Importe;
|
||||
ImporteComisionMN = ImporteComision;
|
||||
ImporteComplementaria = 0;
|
||||
|
||||
@@ -354,63 +337,47 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
{
|
||||
TipoMovtoComision = false;
|
||||
IdCtaContableOtrosGastos = UsuarioActual.Empresa.Funcionalidad(266).ToEntero();
|
||||
}
|
||||
|
||||
Decimal TC = gvr.DataKey("TipoCambio").ToDecimal();
|
||||
if (gvr.DataKey("FechaDocumento").ToDate().Month != TxtFechaDocumento.Text.ToDate().Month || gvr.DataKey("FechaDocumento").ToDate().Year != TxtFechaDocumento.Text.ToDate().Year)
|
||||
{
|
||||
TC = get_GlobalTipoCambio(TxtFechaDocumento.Text.ToDate().AddMonths(-1).LastDayOfMonth()).ToDecimal();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (gvr.FCCheckBox("Chk").Checked)
|
||||
{
|
||||
int tCveMoneda = gvr.DataKey("CveMoneda").ToEntero();
|
||||
if (CveMonedaPago == 1 && tCveMoneda == 1)
|
||||
Decimal TC = gvr.DataKey("TipoCambio").ToDecimal();
|
||||
int tCveMoneda = gvr.DataKey("CveMoneda").ToEntero();
|
||||
//Verifica Fluctuación mensual
|
||||
if (tCveMoneda > 1 && gvr.DataKey("FechaDocumento").ToDate() < TxtFechaDocumento.Text.ToDate().FirstDayOfMonth())
|
||||
{
|
||||
ImporteMN = Importe;
|
||||
ImporteComisionMN = ImporteComision;
|
||||
ImportePago = Importe;
|
||||
TC = get_GlobalTipoCambio(TxtFechaDocumento.Text.ToDate().AddMonths(-1).LastDayOfMonth()).ToDecimal();//obtengo el TC del mes anterior del pago
|
||||
}
|
||||
else if (CveMonedaPago == 1 && tCveMoneda == 2)
|
||||
{
|
||||
ImporteComisionMN = ImporteComision;
|
||||
ImportePago = (Importe * TCPago).RoundSQL();
|
||||
if (UsaComplementaria)
|
||||
{
|
||||
ImporteMN = Importe;
|
||||
ImporteComplementaria = (Importe * TC - Importe).RoundSQL();
|
||||
}
|
||||
else
|
||||
{
|
||||
ImporteMN = Importe * TC;
|
||||
ImporteComplementaria = 0;
|
||||
}
|
||||
}
|
||||
else if (CveMonedaPago == 2 && tCveMoneda == 1)
|
||||
{
|
||||
ImporteBancosMN = (Importe * TCPago).RoundSQL();
|
||||
ImporteAcreedorMN = (Importe * TC).RoundSQL();
|
||||
|
||||
ImporteMN = Importe;
|
||||
ImporteComisionMN = ImporteComision;
|
||||
ImporteComplementaria = 0;
|
||||
}
|
||||
else if (CveMonedaPago == 2 && tCveMoneda == 2)
|
||||
{
|
||||
ImporteComisionMN = ImporteComision;
|
||||
if (UsaComplementaria)
|
||||
{
|
||||
ImporteMN = Importe;
|
||||
ImporteComplementaria = (Importe * TC - Importe).RoundSQL();
|
||||
}
|
||||
else
|
||||
{
|
||||
ImporteMN = (Importe * TC).RoundSQL();
|
||||
ImporteComplementaria = 0;
|
||||
}
|
||||
}
|
||||
//if (CveMonedaPago == 1 && tCveMoneda == 1)
|
||||
//{
|
||||
// ImporteMN = Importe;
|
||||
// ImporteComisionMN = ImporteComision;
|
||||
//}
|
||||
//else if (CveMonedaPago == 1 && tCveMoneda == 2)
|
||||
//{
|
||||
// ImporteComisionMN = ImporteComision;
|
||||
|
||||
// ImporteMN = Importe;
|
||||
// ImporteComplementaria = (Importe * TC - Importe).RoundSQL();
|
||||
//}
|
||||
//else if (CveMonedaPago == 2 && tCveMoneda == 1)
|
||||
//{
|
||||
// ImporteMN = Importe;
|
||||
// ImporteComisionMN = ImporteComision;
|
||||
// ImporteComplementaria = 0;
|
||||
//}
|
||||
//else if (CveMonedaPago == 2 && tCveMoneda == 2)
|
||||
//{
|
||||
// ImporteComisionMN = ImporteComision;
|
||||
// ImporteMN = Importe;
|
||||
// ImporteComplementaria = (Importe * TC - Importe).RoundSQL();
|
||||
//}
|
||||
|
||||
ImporteMN = ImporteMN.RoundSQL();
|
||||
ImporteComplementaria = ImporteComplementaria.RoundSQL();
|
||||
//ImporteMN = ImporteMN.RoundSQL();
|
||||
//ImporteComplementaria = ImporteComplementaria.RoundSQL();
|
||||
ImporteComisionMN = ImporteComisionMN.RoundSQL();
|
||||
ImporteComision = ImporteComision.RoundSQL();
|
||||
AcumImporteMN += ImporteMN;
|
||||
@@ -426,13 +393,14 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
break;
|
||||
}
|
||||
|
||||
if (UsaComplementaria && tCveMoneda > 1 && MsgError == "")
|
||||
if (tCveMoneda > 1 && MsgError == "")
|
||||
{
|
||||
ImporteComplementaria = (Importe * TC - Importe).RoundSQL();
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, false, Importe, Ref, CveConceptoContablePrestamoComplementario, Conc, DateTime.Now, IDCtaContableAcreedorComplementaria, -1, CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), ImporteMX: ImporteComplementaria, CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), ImporteME: Importe, TipoCambio: TC, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero()))
|
||||
MsgError = "No se pudo insertar concepto de acreedor complementaria";
|
||||
}
|
||||
|
||||
if (ImportePago != ImporteAcreedor && MsgError == "")
|
||||
if (ImporteBancosMN != ImporteAcreedorMN && MsgError == "")
|
||||
{
|
||||
bool TipoMovto = false;
|
||||
int IdCtaContableDiferenciaCambiaria = 0;
|
||||
@@ -440,24 +408,23 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
{
|
||||
CveConceptoDiferenciaCambiaria = 65;
|
||||
IdCtaContableDiferenciaCambiaria = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria;
|
||||
TipoMovto = false;
|
||||
Importe = (Importe * TCPago) - (Importe * TC);
|
||||
TipoMovto = false;
|
||||
}
|
||||
else if (TCPago < TC)
|
||||
{
|
||||
CveConceptoDiferenciaCambiaria = 64;
|
||||
IdCtaContableDiferenciaCambiaria = UsuarioActual.Empresa.IdCuentaGananciaCambiaria;
|
||||
TipoMovto = true;
|
||||
Importe = (Importe * TC) - (Importe * TCPago);
|
||||
}
|
||||
ImporteMN = Importe;
|
||||
Importe = ((Importe * TCPago) - (Importe * TC)).Abs();
|
||||
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Importe, Ref, CveConceptoDiferenciaCambiaria, Conc, DateTime.Now, IdCtaContableDiferenciaCambiaria, -1, CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), ImporteMX: ImporteMN, CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), ImporteME: Importe, TipoCambio: TC, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero()))
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Importe, Ref, CveConceptoDiferenciaCambiaria, Conc, DateTime.Now, IdCtaContableDiferenciaCambiaria, -1, CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), ImporteMX: Importe, CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), ImporteME: Importe, TipoCambio: TC, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero()))
|
||||
MsgError = "No se pudo insertar concepto de diferencia cambiaria";
|
||||
}
|
||||
|
||||
if (ImporteComisionMN > 0 && MsgError == "")
|
||||
if (ImporteComision != 0 && MsgError == "")
|
||||
{
|
||||
ImporteComisionMN = (ImporteComision * TCPago).RoundSQL();
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoComision, ImporteComision, Ref, 255, Conc, DateTime.Now, IdCtaContableOtrosGastos, -1, CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), ImporteMX: ImporteComisionMN, CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), TipoCambio: TC, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero()))
|
||||
{
|
||||
MsgError = "No se pudo insertar concepto de pago acreedor";
|
||||
@@ -468,46 +435,18 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
}
|
||||
|
||||
if (CveMonedaPago != 1)
|
||||
{
|
||||
if (UsaComplementaria)
|
||||
{
|
||||
ImporteMNBanco = ImporteBanco;
|
||||
{
|
||||
ImporteComplementaria = (ImporteBanco * TCPago - ImporteBanco).RoundSQL();
|
||||
}
|
||||
else
|
||||
{
|
||||
ImporteMNBanco = (ImporteBanco * TCPago).RoundSQL();
|
||||
ImporteComplementaria = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (MsgError == "" && !ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, ImporteBanco, Ref, 30, Conc, DateTime.Now, IDCtaContableBancos, -1, CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), ImporteMX: ImporteMNBanco, ImporteME: ImporteBanco, TipoCambio: TCPago, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero())) MsgError = "No se pudo insertar concepto de bancos";
|
||||
if (MsgError == "" && !ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, ImporteBanco, Ref, 30, Conc, DateTime.Now, IDCtaContableBancos, -1, CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), ImporteMX: ImporteBanco, ImporteME: ImporteBanco, TipoCambio: TCPago, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero())) MsgError = "No se pudo insertar concepto de bancos";
|
||||
|
||||
//movimiento de ajuste por sino se aplicó en el proceso anterior
|
||||
if (MsgError == "" && CveMonedaPago != 1 && UsaComplementaria )
|
||||
if (MsgError == "" && CveMonedaPago != 1 )
|
||||
{
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, ImporteBanco, Ref, 204, Conc, DateTime.Now, IDCtaContableBancosComplementario, -1, CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), ImporteMX: ImporteComplementaria, ImporteME: ImporteBanco, TipoCambio: TCPago, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero())) MsgError = "No se pudo insertar concepto de bancos complementaria";
|
||||
|
||||
}
|
||||
if (AcumImporteMN != (ImporteBanco + ImporteComplementaria) && CveConceptoDiferenciaCambiaria == 0)
|
||||
{
|
||||
int tCveConceptoOtIngresos = 0;
|
||||
bool TipoMovtoOt = false;
|
||||
decimal Dif = AcumImporteMN - (ImporteBanco + ImporteComplementaria);
|
||||
if (Dif < 0)
|
||||
{
|
||||
tCveConceptoOtIngresos = 65; TipoMovtoOt = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
tCveConceptoOtIngresos = 64; TipoMovtoOt = true;
|
||||
}
|
||||
|
||||
if (MsgError == "" && !ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoOt, Dif.Abs(), Ref, tCveConceptoOtIngresos, Conc, DateTime.Now, 0, -1, CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), ImporteMX: Dif.Abs(), ImporteME: Dif.Abs(), TipoCambio: TCPago, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero()))
|
||||
{
|
||||
MsgError = "No se pudo insertar concepto de ajuste en redondeo";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
@@ -561,6 +500,11 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
Msg.AppendFormat("El Documento se guardo correctamente. Folio <b><a href='/Bancos/IE.aspx?CveIE={0}' target='_blank' class='Texto'>{1}</a></b> <br/>", CveIE, ObjIE.Folio);
|
||||
|
||||
}
|
||||
//GUARDA COMPROBANTE
|
||||
if (!filemove.Equals(""))
|
||||
{
|
||||
filemove.FilesMove(CveIE.ToString(), string.Format(@"{0}IE", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase: false);
|
||||
}
|
||||
System.IO.FileInfo archivo = null;
|
||||
|
||||
if (DdlTipoTransaccion.SelectedValue.ToEntero().Contiene(2, 8, 9))
|
||||
@@ -726,18 +670,8 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
|
||||
if (CveMoneda != 1)
|
||||
{
|
||||
|
||||
if (UsaComplementaria)
|
||||
{
|
||||
ImporteMN = Importe;
|
||||
ImporteComplementaria = Importe * TC - Importe;
|
||||
}
|
||||
else
|
||||
{
|
||||
ImporteMN = Importe * TC;
|
||||
ImporteComplementaria = 0;
|
||||
}
|
||||
|
||||
ImporteComplementaria = Importe * TC - Importe;
|
||||
}
|
||||
|
||||
|
||||
@@ -761,18 +695,16 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, Importe, Ref, CveConceptoContablePrestamo, Conc, DateTime.Now, IDCtaContableAcreedorExtranjera, -1, CveIE, CveProveedor: DdlProveedorPrestamo.SelectedValue.ToEntero(), ImporteMX: ImporteMN, TipoCambio: TC, TipoCambioPago: TC, CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero()))
|
||||
{
|
||||
MsgError = "No se pudo insertar concepto de acreedor";
|
||||
}
|
||||
if (UsaComplementaria)
|
||||
}
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, false, Importe, Ref, CveConceptoContableBancoComplementario, Conc, DateTime.Now, IDCtaContableBancosComplementario, -1, CveIE, CveProveedor: DdlProveedorPrestamo.SelectedValue.ToEntero(), ImporteMX: ImporteComplementaria, ImporteME: Importe, TipoCambio: TC, TipoCambioPago: TC, CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero()))
|
||||
{
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, false, Importe, Ref, CveConceptoContableBancoComplementario, Conc, DateTime.Now, IDCtaContableBancosComplementario, -1, CveIE, CveProveedor: DdlProveedorPrestamo.SelectedValue.ToEntero(), ImporteMX: ImporteComplementaria, ImporteME: Importe, TipoCambio: TC, TipoCambioPago: TC, CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero()))
|
||||
{
|
||||
MsgError = "No se pudo insertar concepto de bancos complementaria";
|
||||
}
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, Importe, Ref, CveConceptoContablePrestamoComplementario, Conc, DateTime.Now, IDCtaContableAcreedorComplementaria, -1, CveIE, CveProveedor: DdlProveedorPrestamo.SelectedValue.ToEntero(), ImporteMX: ImporteComplementaria, ImporteME: Importe, TipoCambio: TC, TipoCambioPago: TC, CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero()))
|
||||
{
|
||||
MsgError = "No se pudo insertar concepto de acreedor complementaria";
|
||||
}
|
||||
MsgError = "No se pudo insertar concepto de bancos complementaria";
|
||||
}
|
||||
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, Importe, Ref, CveConceptoContablePrestamoComplementario, Conc, DateTime.Now, IDCtaContableAcreedorComplementaria, -1, CveIE, CveProveedor: DdlProveedorPrestamo.SelectedValue.ToEntero(), ImporteMX: ImporteComplementaria, ImporteME: Importe, TipoCambio: TC, TipoCambioPago: TC, CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero()))
|
||||
{
|
||||
MsgError = "No se pudo insertar concepto de acreedor complementaria";
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user