Как реализовать следующий механизм?
Есть 1000 графических файлов с именами 1.bmp,2.bmp........999.bmp,1000.bmp
Как сформировать отчет, если на листе должно быть 4 фотографии?
Как сформировать отчет, если на листе должно быть 4 фотографии?
Комментарии
Памяти в компьютер, да и в принтер побольше. На 98 может и не сформироваться. Ну и чем нибудь себя занять на время формирования отчёта
frxreport1.PrepareReport(false);
C учетом того, что файлы генерятся в самом приложении. Т.е. набиваю отчет, а затем frxreport1.ShowPreparedReport;
Вроде бы должно работать. Но вот только цикл в котором я готовлю каждую страницу, почемуто на втором проходе вываливает ошибку: 'Access violation at address 00000000. Read of address 00000000.'
frxreport1.ShowPreparedReport;
эквивалентно
frxreport1.ShowReport(false);
И что значит "набиваю"? После frxreport1.PrepareReport(false) отчёт уже сформирован
А почему эквивалентно? Насколько я понимаю мне необходимо указать с помощью frxreport1.PrepareReport(false); что лист закончен. И так с каждым листом. А затем подготовленные листы вывести в preview с помощью frxreport1.ShowPreparedReport;
P.S. Если помнишь ты недавно помогал решить аналогичную проблему, за что тебе большое спасибо. Ту программу я доделал, но вот некоторые нюансы формирования ШК меня не устроили, поэтому снова парюсь.
Для того, чтобы убрать скругление штрихов, положи на верхнюю и нижнюю границы штрихкода Мемо с той же заливкой, что и цвет фона
С использованием ActiveX:
во время обработки Next в frxUserDataset выгружаешь 4 bmp в файлы, а при формировании страницы считываешь bmp через Picture1.Picture.LoadFromFile('myfile.bmp')
Приведи код цикла.
begin
barcode1.Text:=edit1.Text;
Barcode1.picture.pictureadapter := nil;
Barcode1.createpicturebysize(bc_width,bc_height);
reportpicture1.Picture:=barcode1.Picture; // на втором на этой строке дает ошибку
barcode1.Text:=edit1.Text;
Barcode1.picture.pictureadapter := nil;
Barcode1.createpicturebysize(bc_width,bc_height);
reportpicture2.Picture:=barcode1.Picture;
barcode1.Text:=edit1.Text;
Barcode1.picture.pictureadapter := nil;
Barcode1.createpicturebysize(bc_width,bc_height);
reportpicture3.Picture:=barcode1.Picture;
barcode1.Text:=edit1.Text;
Barcode1.picture.pictureadapter := nil;
Barcode1.createpicturebysize(bc_width,bc_height);
reportpicture4.Picture:=barcode1.Picture;
frxreport1.PrepareReport(false);
end;
frxreport1.ShowPreparedReport;
А с frxBarCodeView так ничего и не получилось?
А в чем разница:
picture1:=frxreport1.FindObject('Picture1') as TfrxPictureView;
picture1.Picture:=BarCode1.Picture; // так у меня
и
TfrxPictureView(frxReport1.FindObject('Picture1')).Picture:=BarCode1.Picture; // ты прислал
Вот еще один вопросик. Как можно очистить prepearedreport?