Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 22-06-2016
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 17
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Es que no me queda del todo claro. Si te queres llevar la descripcion, porque estas dando de alta un nuevo registro?

Ademas no es sano que los form se entre conozcan entre si. Es mucho mejor hacer algo como esto:

Agrega esta propiedad en tu TfListadoPuestos:

Código Delphi [-]
type
  TfListadoPuestos = class(TForm)
  private
    FDescripcionPuesto: string;
  public
    function Execute: Boolean;
    property DescripcionPuesto: string read FDescripcionPuesto;
  end;

implementation

function TfListadoPuestos.Execute: Boolean;
begin
  if ShowModal = mrOk then
  begin
    Result := True;
    FDescripcionPuesto := // aca pones el valor del puesto seleccionado
  end
  else
    Result := False; 
end;

Y luego podes invocar a este form asi:

Código Delphi [-]
var
  FListadoPuestos: TfListadoPuestos;
begin
  FListadoPuestos := TfListadoPuestos.Create(Self)
  if FListadoPuestos.Execute then
    FListadoPuestos.DescripcionPuesto // valor que tienes que agregar al listbox
end;

--

Esto es ya mas consejo: Por que accedes a los valores de los campos como Variants?

TDataSet tiene una propiedad indizada y por defecto que devuelve el Variant del campo que pasas por indice. Pero he tenido malas experiencias con esta propiedad.

Te aconsejo usar DataSet.FieldByName('Campo').AsString/AsInteger, etc

A mi tambien me parece espantosamente larga la sintaxis, pero ya que llevas Delphi 2010, lo podes solucionar con una clase de extension:

Código Delphi [-]
interface

uses
  DB;

type
  TDataSetHelper = class helper for TDataSet
  private
    function GetFieldObject(Index: string): TField; inline;
  public
    property FieldObject[Index: string]: TField read GetFieldObject;
  end;

implementation

function TDataSetHelper.GetFieldObject(Index: string): TField;
begin
  Result := FieldByName(Index);
end;

Y ahora podrias escribir:

Código Delphi [-]
  DataSet['NombreCampo'].AsInteger;
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cargar un ListBox con datos de un Query Liz Leon Varios 1 25-02-2015 19:56:20
Pasar datos de varios listbox a una tabla Pedron Varios 5 08-05-2014 10:09:34
Como pasar los datos de un query a un ClientDataSet oscarac OOP 1 08-07-2011 19:52:24
Pasar datos de una Query a una tabla Vanis SQL 3 09-01-2007 02:29:41
pasar de un dbgrid a un listbox Goyo OOP 13 14-12-2006 20:38:47


La franja horaria es GMT +2. Ahora son las 03:19:39.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi