Reputation: 3568
I am using VS2013 and crystal report 2013
I am passing 30 parameters to crystal report.
It is working fine for 5 times, Then I got the next error:-
Memory Full. Not Enough memory for operation.
What I tried so far:-
using CrystalReport1.Refresh();
without solving the problem.
Appreciate any help.
Edit 1:-
I know maybe my question has lack of info but I think there is no any details could help you, any ways here you are the extra info I hope it will be useful.
I have Application as next:-
when I click Print it is working fine as next
if I close the window and press Print again it is working fine for 5 or 6 times, then I faced the next error:-
Edit 2:-
My code is:-
1) Create new form and drag and drop crystal report viewer.
2) at the load event I wrote the next code:-
private void frmReport_Load(object sender, EventArgs e)
{
try
{
CrystalReport11.SetParameterValue("pName", PatientName);
CrystalReport11.SetParameterValue("pAge", Age);
CrystalReport11.SetParameterValue("pDate", Date);
CrystalReport11.SetParameterValue("P1", Number1);
CrystalReport11.SetParameterValue("P2", Number2);
CrystalReport11.SetParameterValue("P3", Number3);
CrystalReport11.SetParameterValue("P4", Number4);
CrystalReport11.SetParameterValue("P5", Number5);
CrystalReport11.SetParameterValue("P6", Number6);
CrystalReport11.SetParameterValue("P7", Number7);
CrystalReport11.SetParameterValue("pDrugsName1", DrugName1);
CrystalReport11.SetParameterValue("pDrugsName2", DrugName2);
CrystalReport11.SetParameterValue("pDrugsName3", DrugName3);
CrystalReport11.SetParameterValue("pDrugsName4", DrugName4);
CrystalReport11.SetParameterValue("pDrugsName5", DrugName5);
CrystalReport11.SetParameterValue("pDrugsName6", DrugName6);
CrystalReport11.SetParameterValue("pDrugsName7", DrugName7);
CrystalReport11.SetParameterValue("pQTY1", QTY1);
CrystalReport11.SetParameterValue("pQTY2", QTY2);
CrystalReport11.SetParameterValue("pQTY3", QTY3);
CrystalReport11.SetParameterValue("pQTY4", QTY4);
CrystalReport11.SetParameterValue("pQTY5", QTY5);
CrystalReport11.SetParameterValue("pQTY6", QTY6);
CrystalReport11.SetParameterValue("pQTY7", QTY7);
CrystalReport11.SetParameterValue("pTimeOfUse1", TimeOfUse1);
CrystalReport11.SetParameterValue("pTimeOfUse2", TimeOfUse2);
CrystalReport11.SetParameterValue("pTimeOfUse3", TimeOfUse3);
CrystalReport11.SetParameterValue("pTimeOfUse4", TimeOfUse4);
CrystalReport11.SetParameterValue("pTimeOfUse5", TimeOfUse5);
CrystalReport11.SetParameterValue("pTimeOfUse6", TimeOfUse6);
CrystalReport11.SetParameterValue("pTimeOfUse7", TimeOfUse7);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
and I am calling the form via next code:-
DrugName1 = (txtDrugsName1.Text == string.Empty) ? " " : txtDrugsName1.Text;
DrugName2 = (txtDrugsName2.Text == string.Empty) ? " " : txtDrugsName2.Text;
DrugName3 = (txtDrugsName3.Text == string.Empty) ? " " : txtDrugsName3.Text;
DrugName4 = (txtDrugsName4.Text == string.Empty) ? " " : txtDrugsName4.Text;
DrugName5 = (txtDrugsName5.Text == string.Empty) ? " " : txtDrugsName5.Text;
DrugName6 = (txtDrugsName6.Text == string.Empty) ? " " : txtDrugsName6.Text;
DrugName7 = (txtDrugsName7.Text == string.Empty) ? " " : txtDrugsName7.Text;
Number1 = (txtDrugsName1.Text == string.Empty) ? " " : "1";
Number2 = (txtDrugsName2.Text == string.Empty) ? " " : "2";
Number3 = (txtDrugsName3.Text == string.Empty) ? " " : "3";
Number4 = (txtDrugsName4.Text == string.Empty) ? " " : "4";
Number5 = (txtDrugsName5.Text == string.Empty) ? " " : "5";
Number6 = (txtDrugsName6.Text == string.Empty) ? " " : "6";
Number7 = (txtDrugsName7.Text == string.Empty) ? " " : "7";
QTY1 = (cmbQTY1.Text == string.Empty) ? " " : cmbQTY1.Text;
QTY2 = (cmbQTY2.Text == string.Empty) ? " " : cmbQTY2.Text;
QTY3 = (cmbQTY3.Text == string.Empty) ? " " : cmbQTY3.Text;
QTY4 = (cmbQTY4.Text == string.Empty) ? " " : cmbQTY4.Text;
QTY5 = (cmbQTY5.Text == string.Empty) ? " " : cmbQTY5.Text;
QTY6 = (cmbQTY6.Text == string.Empty) ? " " : cmbQTY6.Text;
QTY7 = (cmbQTY7.Text == string.Empty) ? " " : cmbQTY7.Text;
TimeOfUse1 = (cmbTimeOfUse1.Text == string.Empty) ? " " : cmbTimeOfUse1.Text;
TimeOfUse2 = (cmbTimeOfUse2.Text == string.Empty) ? " " : cmbTimeOfUse2.Text;
TimeOfUse3 = (cmbTimeOfUse3.Text == string.Empty) ? " " : cmbTimeOfUse3.Text;
TimeOfUse4 = (cmbTimeOfUse4.Text == string.Empty) ? " " : cmbTimeOfUse4.Text;
TimeOfUse5 = (cmbTimeOfUse5.Text == string.Empty) ? " " : cmbTimeOfUse5.Text;
TimeOfUse6 = (cmbTimeOfUse6.Text == string.Empty) ? " " : cmbTimeOfUse6.Text;
TimeOfUse7 = (cmbTimeOfUse7.Text == string.Empty) ? " " : cmbTimeOfUse7.Text;
frmReport obj = new frmReport(
txtPatientName.Text,
nudAge.Value.ToString(),
dtpDate.Text,
DrugName1,
DrugName2,
DrugName3,
DrugName4,
DrugName5,
DrugName6,
DrugName7,
QTY1,
QTY2,
QTY3,
QTY4,
QTY5,
QTY6,
QTY7,
TimeOfUse1,
TimeOfUse2,
TimeOfUse3,
TimeOfUse4,
TimeOfUse5,
TimeOfUse6,
TimeOfUse7,
Number1,
Number2,
Number3,
Number4,
Number5,
Number6,
Number7
);
obj.ShowDialog();
Upvotes: 2
Views: 6185
Reputation: 11
I had the same problem and this worked for me too:
into frmReport_FormClosing Type crystalReportViewer1.Dispose(); and CrystalReport11.Dispose();
Upvotes: 1