Parameters can be set between generating and printing.
But in your code snippet, you're redefining the source query, so the parameter is not there anymore:
query='SELECT id,firstname,surname,birth_place,dob FROM temporary_staff WHERE id={}'.format(id ))
This query should return the same set of fields as the source query you create in the Valentina Studio.
So if you go this way, it will look something like that:
query="SELECT id,firstname,surname,birth_place,dob, '{}' || image as full_path FROM temporary_staff WHERE id={}".format('C:/Users/RAZOR64/Desktop/PROJECT/img/',id )
Actually, you can define parameters right here, including an ID
query='SELECT id,firstname,surname,birth_place,dob, $P(pImgPath) || image as full_path FROM temporary_staff WHERE id=$P(pID)'
and set them both afterwards:
report.setParameterValue( 'pImgFolder', 'C:/Users/RAZOR64/Desktop/PROJECT/img/' )
report.setParameterValue( 'pID', id )
So the overall generation and printing:
# Make report instance
report = project.report(name='tempofficial_summary', dsn='sqlite://C:/Users/RAZOR64/Desktop/PROJECT/EmployeeDatabase.db',query='SELECT id,firstname,surname,birth_place,dob, $P(pImgPath) || image as full_path FROM temporary_staff WHERE id=$P(pID)')
report.setParameterValue( 'pImgFolder', 'C:/Users/RAZOR64/Desktop/PROJECT/img/' )
report.setParameterValue( 'pID', id )
# Print result as PDF
report.printToDisk('C:/Users/RAZOR64/Desktop/tempReport1234.pdf')