Information générale
Catégorie:
Gestionnaire de rapports & Rapports
Versions des environnements
>>>>Report variables used to be Global in prior version of VFP including vfp9 sp1. This is not the case i have expressions that call out to an object that does an eval of report expression.
>>>>
>>>>I preprocess reports swapping the expression with a public variable (expression was rpt_get_history("Range",ldBgn, ldEnd)) which is replace with public variable named _u132abc56 for instance. The ldBgn and ldEnd are report variables. So my object does a:
>>>>
>>>>lcVariable = obj.aExpression[1,1] && contains "_u132abc56"
>>>>lcExp = obj.aExpression[1,2] && contains [rpt_get_history("Range",ldBgn, ldEnd)]
>>>>
>>>>&lcVariable. = eval(lcexpr)
>>>>
>>>>and when report renders that field if get data for variable _u132abc56.
>>>>
>>>>How do I get access to the variables ldBgn, ldEnd, I have access to the listener object but am at a loss to figure how to get
>>>>values for ldBgn and ldEnd.
>>>>
>>>>Ken
>>>
>>>You can declare variables local in the procedure calling the report and they will be visible in the report.
>>
>>I'm trying to access variables defined in the Report in a global object. Until sp2 report variables used to be defined as Public.
>>
>>Ken
>
>Actually you need to declare the variables private not local to make them visible in the report.
These variables are DEFINED IN THE REPORT, I'm trying to access them in a object that is called by the OnEntry bands of the report. Before SP2 all Report Variables were defined as Global, now I can't find them. The only work around I have been able to do is to create another Report Variable and set the Value to Store expression: _Vfp.SetVar("ldBgn", ldBgn). I have over 500 reports to check. And I don't have a way to delete the public variable after report is finished running (yet).
Ken
Précédent
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement