2 using System.Collections.Generic;
12 namespace sage.ew.serie
33 #endregion Constructores 35 #region ILinVenDetOperable 67 tcMensaje = String.Format(
"El montaje introducido no pertenece al artículo de la línea." + Environment.NewLine +
"Montaje: {0}", tcValor);
73 tcMensaje = String.Format(
"El almacén del modelo no corresponde al almacén del documento. Si desea asignar este modelo a este albarán antes debe realizar un albarán de traspaso." + Environment.NewLine +
"Montaje: {0}", tcValor);
91 tcMensaje =
"El montaje introducido está dado de baja.";
103 tcMensaje =
"El montaje introducido no está dado de baja.";
110 tcMensaje =
"El montaje introducido no existe.";
125 List<string> llisSeleccionadas = null;
130 llisSeleccionadas = ((
ewDocVentaLinPED)toLinea)._Traspasar_Extensiones as List<string>;
139 if (llisSeleccionadas != null)
140 llOk = llisSeleccionadas.Remove(tcMontaje);
151 public bool _ConsultarDatos(interficies.IDocumentLinea toLinea, ref DataTable tdtDatos)
154 List<string> llisSeleccionadas = null;
157 DataColumn ldcNumero =
new DataColumn(
"NUMERO", typeof(
int));
158 DataColumn ldcSerie =
new DataColumn(
"SERIE", typeof(
string));
159 tdtDatos.Columns.AddRange(
new DataColumn[] { ldcNumero, ldcSerie });
162 llisSeleccionadas = Obtener_Lista_Extensiones(toLinea);
164 if (llisSeleccionadas != null)
169 foreach (
string lcSerie
in llisSeleccionadas)
171 DataRow ldrNewRow = tdtDatos.NewRow();
172 ldrNewRow[
"NUMERO"] = lnContador;
173 ldrNewRow[
"SERIE"] = lcSerie;
175 tdtDatos.Rows.Add(ldrNewRow);
192 public bool _Save_NullToValue(
string tcMontaje, interficies.IDocumentLinea toLinea,
object sender = null)
194 List<string> llisSeleccionadas = null;
197 llisSeleccionadas = Obtener_Lista_Extensiones(toLinea);
200 if (!llisSeleccionadas.Contains(tcMontaje))
201 llisSeleccionadas.Add(tcMontaje);
203 Actualizar_Lista_Extensiones(toLinea, llisSeleccionadas);
218 List<string> llisSeleccionadas = null;
221 llisSeleccionadas = Obtener_Lista_Extensiones(toLinea);
223 llOk = llisSeleccionadas.Remove(toMontajes.
_OldVal.ToString());
225 if (!llisSeleccionadas.Contains(toMontajes.
_NewVal.ToString()))
226 llisSeleccionadas.Add(toMontajes.
_NewVal.ToString());
228 Actualizar_Lista_Extensiones(toLinea, llisSeleccionadas);
241 public bool _Save_ValueToNull(
string tcMontaje, interficies.IDocumentLinea toLinea,
object sender = null)
244 List<string> llisSeleccionadas = null;
247 llisSeleccionadas = Obtener_Lista_Extensiones(toLinea);
249 if (llisSeleccionadas == null)
250 llisSeleccionadas =
new List<string>();
252 llOk = llisSeleccionadas.Remove(tcMontaje);
254 Actualizar_Lista_Extensiones(toLinea, llisSeleccionadas);
265 public bool _Show(
object toPadre, interficies.IDocumentLinea toLinea)
282 int lni = 0, lnTotal = 0;
284 DataTable ldtTemp =
new DataTable();
286 if (lnTraspasar == 0)
289 tempLin.__Obtener_Detalle(ref ldtTemp);
290 if (ldtTemp.Rows.Count > 0)
294 if (lnTraspasar > lnTotal && ldtTemp.Rows.Count > lnTotal
295 &&
string.IsNullOrWhiteSpace(ldtTemp.Rows[lni][
"VENTA"].ToString())
296 &&
string.IsNullOrWhiteSpace(ldtTemp.Rows[lni][
"DEPOSITO"].ToString()))
298 loForm.
_LinVenDetSeries._lisCodigos[lnTotal]._Codigo = ldtTemp.Rows[lni][
"SERIE"].ToString();
306 loForm._ShowDialog();
318 public bool _Show(
object toPadre,
bool tlReadOnly, interficies.IDocumentLinea toLinea)
322 loFormVenta._ReadOnly = tlReadOnly;
331 loFormVenta._ShowDialog();
350 #endregion ILinVenDetOperable 357 private static void Actualizar_Lista_Extensiones(interficies.IDocumentLinea toLinea, List<string> tlisSeleccionadas)
376 private static List<string> Obtener_Lista_Extensiones(interficies.IDocumentLinea toLinea,
bool tlCrearSiEsNull =
true)
378 List<string> llisSeleccionadas = null;
382 llisSeleccionadas = ((
ewDocVentaLinPED)toLinea)._Traspasar_Extensiones as List<string>;
392 if (llisSeleccionadas == null && tlCrearSiEsNull)
393 llisSeleccionadas =
new List<string>();
395 return llisSeleccionadas;
Clase linea del presupuesto
decimal _Traspasar_Unidades
Unitats a traspassar
bool _Disponible
Disponibilidad. Null si no existe
Clase linea de documento de venta de pedido
bool _ComprobarValor(LinVenDetSeries toLineaSerie, string tcValor, bool tlAbono, IDocumentLinea toLinea, ref string tcMensaje)
Realiza la validación de un valor como posible codigo
bool _Show(object toPadre, interficies.IDocumentLinea toLinea)
Nos presenta el formulario para visualizar/operar con los montajes
bool _Save_ValueToNull(string tcMontaje, interficies.IDocumentLinea toLinea, object sender=null)
Operaciones de guardado de datos asociados a la línea cuando esta pierde su valor (Hay que tratar los...
bool _ConsultarDatos(interficies.IDocumentLinea toLinea, ref DataTable tdtDatos)
Operaciones de carga de datos asociados a la línea (GESTION.VENSER)
bool _ActualizarPosicionTabla(string tcMontaje, string tcNumero, interficies.IDocumentLinea toLinea)
Establece el valor de NUMERO (posición en la lista) para el montaje dado Específico para uso interno ...
bool _ValidarAlmacen(IDocumentLinea toLinea)
Método para validar que el almacén de la línea con el obtenido de la serie sean el mismo ...
Interficie mínima de las líneas (Mantener lo mas reducida posible)
Classe campo para las entidades, que permitirá comprobar si se ha cambiado su valor ...
Clase para controlar toda la gestion de venta de una serie de artículo
object _OldVal
Valor viejo
Interficie para representar aquellas operciones que han de implementar las clases para poder usar Lin...
Clase para controlar toda la gestion de venta de un montaje
Clase especifica para montajes (deriva de Serie)
bool _Save_ValueToValue(ewCampo toMontajes, interficies.IDocumentLinea toLinea, object sender=null)
Operaciones de guardado de datos asociados a la línea cuando esta modifica su valor (Hay que tratar v...
Clase derivada de Montaje específica para Venta de montajes
MontajeDocVentaSinMontaje(string tcMontaje, IDocumentLinea toDocumentoLin=null)
Constructor con parámetros (utiliza el constructor base)
Classe base dels documents.
override int _UnidadesConSerie
Indica el número de series / montajes asociado a la línea
object _NewVal
Valor nuevo
MontajeDocVentaSinMontaje()
Constructor de la clase MontajeDocVentaSinMontaje
bool _Delete(string tcMontaje, IDocumentLinea toLinea, bool tlAbono, object sender=null)
Operaciones de borrado
Montajes : Auxiliary class for validadation and single query purposes
bool _ObtenerSeriesPermitidas(ref List< string > tlisValidas)
Método pensado para obtener una lista de valores que serán los únicos admitidos por las operaciones E...
bool _ValidarArticulo(IDocumentLinea toLinea)
Método para validar que el artículo de la línea con el obtenido de la serie sean el mismo ...
bool _Show(object toPadre, bool tlReadOnly, interficies.IDocumentLinea toLinea)
Nos presenta el formulario para visualizar/operar con los montajes
bool _Save_NullToValue(string tcMontaje, interficies.IDocumentLinea toLinea, object sender=null)
Operaciones de guardado de datos asociados a la línea cuando esta adquiere su valor (No hay que trata...
Clase que gestiona las series/lotes asignados a una linea de un documento de venta ...