none
problema em atualizar campo de um dataset populado RRS feed

  • Pergunta

  •  Olá pessoal. Tudo bem?

    Estou com o seguinte problema:  Estou tentando alterar um campo de uma tabela ja populada q está vinculada a outra por uma chave primária. O código q estou com problema é o seguinte:

     

            else
            {
              dsPedido = p_ws.GetPedidoMesa(Convert.ToInt32(dsTemp.Tables[0].Rows[0]["PEDIDO"].ToString()));
              foreach (DataRow dt in dtItems.Rows)
              {
                dsPedido.Tables[0].Rows[0]["PED_VAL_TOT"] = Convert.ToString(Convert.ToDecimal(dsPedido.Tables[0].Rows[0]["PED_VAL_TOT"].ToString()) +
                             Convert.ToDecimal(dt["PRO_PRC_UNIT"].ToString()));
              }
              foreach (DataRow dt in dtItems.Rows)
              {
                DataRow drItemPedido;
                drItemPedido = dsPedido.Tables[1].NewRow();
                drItemPedido.BeginEdit();
                drItemPedido["PED_SEQ"] = dsTemp.Tables[0].Rows[0]["PEDIDO"].ToString();
                drItemPedido["PRO_SEQ"] = dt["PRO_SEQ"].ToString();
                drItemPedido["IPE_SEQ"] = p_ws.setSequencial("ECF_ITEM_PEDIDO", "IPE_SEQ");
                drItemPedido["PRO_COD_BARRA"] = dt["PRO_COD_BARRA"].ToString();
                drItemPedido["IPE_QTD_PED"] = 1;
                drItemPedido["IPE_VAL_UNIT"] = dt["PRO_PRC_UNIT"].ToString();
                drItemPedido["IPE_VAL_TOT"] = dt["PRO_PRC_UNIT"].ToString();
                drItemPedido["FUN_SEQ_GAR"] = garcom.Gar_Seq.ToString();
                drItemPedido["IPE_STATUS"] = 0;
                drItemPedido["IPE_DAT_HOR_LANC"] = garcom.ServerDateTime.ToLocalTime();
                drItemPedido["IPE_DAT_HOR_OPE"] = garcom.ServerDateTime.ToLocalTime();
                drItemPedido.EndEdit();
                try
                {
                  dsPedido.Tables[1].Rows.Add(drItemPedido);
                }
                catch (ConstraintException cEx)
                {
                  drItemPedido["IPE_SEQ"] = p_ws.setSequencial("ECF_ITEM_PEDIDO", "IPE_SEQ");
                  dsPedido.Tables[1].Rows.Add(drItemPedido);
                }
              }
       

     Quando eu crio os dois registros dá tudo certo, mas a questão é depois q crio o registro da tabela de pedidos, por que tenho que apenas alterar 1 campo dela.  Algué me ajude por favor.

    quinta-feira, 6 de maio de 2010 15:42

Todas as Respostas