public Valor Valor(EnumTipoDatoCampo tipoDato, byte[] trama, int inicio, int longitud)
 {
     switch (tipoDato)
     {
         case EnumTipoDatoCampo.Alfanumerico:
         case EnumTipoDatoCampo.Numerico_sin_Punto:
         case EnumTipoDatoCampo.Numerico_con_Punto:
         case EnumTipoDatoCampo.Alfabetico:
             return new Caracter(Encoding.ASCII.GetString(trama, inicio, longitud));
         case EnumTipoDatoCampo.BCD:
             return new BCD(EnByte(trama, inicio, longitud));
         case EnumTipoDatoCampo.Binario:
             return new Binario(EnByte(trama, inicio, longitud));
         default:
             throw new ArgumentOutOfRangeException("tipoDato");
     }
 }
 public Valor Valor(EnumTipoDatoCampo tipoDato,string mensaje)
 {
     switch (tipoDato)
     {
         case EnumTipoDatoCampo.Alfanumerico:
         case EnumTipoDatoCampo.Numerico_sin_Punto:
         case EnumTipoDatoCampo.Numerico_con_Punto:
         case EnumTipoDatoCampo.Alfabetico:
             return new Caracter(mensaje);
         case EnumTipoDatoCampo.BCD:
             return new BCD(IntToBcd(Int64.Parse(mensaje)));
         case EnumTipoDatoCampo.Binario:
             return new Binario(Codificacion(mensaje));
         default:
             throw new ArgumentOutOfRangeException("tipoDato");
     }
 }
Esempio n. 3
0
 public Campo(int codigo, bool esCabecera, bool mandatorio, int? posicionRelativa, string nombre, bool variable
     , int? longitudCabecera, Valor valorCabecera, int longitudCuerpo
     , Valor valorCuerpo, EnumTipoDatoCampo tipoDato, bool esTanqueo)
 {
     Codigo = codigo;
     Mandatorio = mandatorio;
     PosicionRelativa = posicionRelativa;
     Nombre = nombre;
     Variable = variable;
     LongitudCabecera = longitudCabecera;
     ValorCabecera = valorCabecera;
     LongitudCuerpo = longitudCuerpo;
     ValorCuerpo = valorCuerpo;
     TipoDato = tipoDato;
     TipoCampo = esCabecera ? TipoCampoMensaje.CabeceraMensaje : TipoCampoMensaje.CuerpoMensaje;
     EsTanqueo = esTanqueo;
 }