Ver Mensaje Individual
  #21  
Antiguo 10-04-2013
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Reputación: 14
Vales08 Va por buen camino
Muchas gracias Neftali
Bueno les comento que logre hacer lo que necesitaba gracias a ustedes, agregue una linea mas al codigo para evitar que me pasen los registros repetidos.. Le dejo el codigo por si a alguien le llega a hacer falta..
Ahi les va:
Código Delphi [-]
var
i, alim, plan: Integer;
begin
if Grilla_plan_a.SelectedRows.Count > 0 then
  begin
    with Grilla_plan_a.DataSource.DataSet do
      begin
        for i := 0 to Grilla_plan_a.SelectedRows.Count-1 do
          begin
            GotoBookmark(Pointer(Grilla_plan_a.SelectedRows.Items[i]));
             //para evitar la repetición de los registros a pasar
            alim:=DM.DSET_alimID_ALIM.Value;
            plan:=DM.DSET_plan_alimID_PLAN_A.Value;
            if (DM.Q_plan_y_alim.Locate('ID_ALIM; ID_PLAN', VarArrayOf([alim, plan]), []))then
              begin
                ShowMessage('El alimento ya ah sido cargado');
              end
              else
                begin
                  //Abro la tabla pra realizar la inserción y asigno los valores
                  DM.DSET_plan_y_alim.Append;
                  DM.DSET_plan_y_alimESTADO.Value:=0;
                  DM.DSET_plan_y_alimID_ALIM.Value:=DM.DSET_alimID_ALIM.Value;
                  DM.DSET_plan_y_alimID_PLAN.Value:=DM.DSET_plan_alimID_PLAN_A.Value;
                  DM.DSET_plan_y_alim.Post;
                end;
          end;
      end;
  end;
   // esto para que la Grilla2 me vaya mostrando los registros que voy pasando(alimentos) que pertenezcan al plan asignado.
   DM.Q_plan_y_alim.SQL.Clear;
   DM.Q_plan_y_alim.SQL.Add('select * from PLAN_Y_ALIM where ID_PLAN=:name and ESTADO=0');
   DM.Q_plan_y_alim.ParamByName('name').AsInteger:=DM.DSET_plan_y_alimID_PLAN.Value;
   DM.Q_plan_y_alim.Open;
   DM.DSET_plan_y_alim.Open;

A mi me funciona de maravilla..
Muchisimas gracias por sus aportes, me fueron de gran ayuda..
Responder Con Cita