private Int32 TamanhoMensagem(Entidade.Layout.Acao layoutAcao) { Int32 tamanho = 0; foreach (Entidade.Layout.Campo c in layoutAcao.Campos) { tamanho += c.Tamanho; } return(tamanho); }
private IEntidade DesmontarMensagem <T>(T tela, Entidade.Layout.Acao layoutAcao, String msg) where T : IEntidade { if (pos < msg.Length) { foreach (Entidade.Layout.Campo campo in layoutAcao.Campos) { tela.GetType().GetProperty(campo.Propriedade).SetValue(tela, DesmontarCampo(campo.TipoDados, msg.Substring(pos, campo.Tamanho), campo.Formato), null); pos += campo.Tamanho; } } return(tela); }
private String MontarMensagem(IEntidade tela, Entidade.Layout.Acao layoutAcao) { String msg = ""; Type t = tela.GetType(); foreach (Entidade.Layout.Campo campo in layoutAcao.Campos) { msg += MontarCampo(campo.TipoDados, (Object)t.GetProperty(campo.Propriedade).GetValue(tela, null), campo.Tamanho, campo.Formato); } msg = msg.Length.ToString().PadLeft(5, '0') + msg; return(msg); }
private Entidade.Layout.Acao Buscar(String telaNome, String chaveAcao, Tipo tipo) { Entidade.Layout.Acao layoutAcao = null; foreach (Entidade.Layout.Mensagem tela in Entidade.Layout.Mapa.Mensagens) { if (tela.Nome == telaNome) { foreach (Entidade.Layout.Acao acao in tela.Acao) { if (acao.Nome == chaveAcao && acao.Tipo == tipo) { layoutAcao = acao; break; } } } } return(layoutAcao); }