01/04/2023 - Robert59 ha scritto:
vedi in questo caso utilizzo la variabile ma però devo metterla tra parentesi ed apice
No, non stai usando una variabile solo scrivendola in altro modo, ma stai passando un parametro sottoforma di stringa a un metodo.
Se io scrivo
var
CodLoc: string;
begin
CodLoc := UniDoc.Fieldbyname('cod_loc').AsString;
end;
il codice funziona, ma funzionerebbe anche se io scrivessi
var
MioCodice: string;
begin
MioCodice := UniDoc.Fieldbyname('cod_loc').AsString;
end;
Il nome della variabile lo puoi cambiare a tuo piacimento, e rappresenta il contenitore dove intendi salvare un valore, specificato in modo letterale o recuperato da un funzione, da un metodo, da una proprietà, ecc.
Se invece scrivo questo:
var
MioCodice: string;
begin
MioCodice := UniDoc.Fieldbyname('MioCodice').AsString;
end;
non funzionerà mai, perché il valore ‘MioCodice’ non è la variabile MioCodice: si tratta di una stringa che, passata come parametro, indica al DataSet (UniCod) e in particolare al suo metodo FieldByName che vuoi recuperare il valore del campo che si chiama “MioCodice”, in particolare come stringa (AsString), e quel campo nella tabella non esiste!
In sintesi, un conto è il nome della variabile che usi, e quello lo definisci a tuo piacere perché si tratta di un'area di memoria etichettata come preferisci dove vai a salvare un valore, un conto è un valore stringa che passi a una funzione per identificare in modo specifico un campo (ma vale per qualsiasi altro valore/oggetto) del quale vuoi recuperare il valore.
Il fatto che il nome fosse uguale tra stringa e variabile è puramente incidentale.
Detto questo, non si può esimersi dal sottolineare che tutta questa roba è l'ABC della sintassi e delle nozioni che si devono conoscere prima di scrivere programmi. Se persistono questi dubbi, sicuramente avanzare nella scrittura di altro codice porterà a incontrare ben altri problemi e ulteriori ostacoli, in quanto è notorio che prima di correre si impara a camminare.
Ciao! :)