Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
A fost lansat Ubuntu 24.04 LTS

Free streaming SkyShowtime de la ...

Skoda Fabia 1.0 TSI (110 CP)- 19 ...

Mezina familiei, Merida BigNine
 The Tattooist of Auschwitz (2024)

Se poate recupera numar de telefo...

Upgrade de la MacBook Pro M1 cu 8...

Ce tip de monitor am nevoie pt of...
 Resoftare camera supraveghere

Laptop Gaming

Cu ce va aparati de cainii agresi...

Nu imi platiti coletul cu cardul ...
 Exista vreun plan de terorizare p...

Schimbare adresa DNS IPv4 pe rout...

Recomandare Barebone

Monede JO 2024
 

Crystal Reports

- - - - -
  • Please log in to reply
28 replies to this topic

#19
ThePuiu

ThePuiu

    Active Member

  • Grup: Members
  • Posts: 1,742
  • Înscris: 11.11.2003
Ma lipesc si eu aici cu o problema care ma dispera de vro 2 zile.... Am o aplicatie care ruleaza in 10 locuri pe 10 server SQL 2000 MSDE. Totul e ok, mai putin un raport care pe unele retele merge, pe altele nu! Precizez ca este acelasi program pus, pe aceeasi baza de date.... In unele locuri apare la lansarea raportului fereastra de logon cu username, psw, nume server, etc. Atasez codul folosit sa va uitati prin el, poate va vine voua o idee...
			
			ConnectionInfo crConnectionInfo = new ConnectionInfo();
			TableLogOnInfo crTableLogOnInfo;
			Tables crTables;
			Table crTable;


			DataTable dt = new DataTable();
			SqlDataAdapter da = new SqlDataAdapter("ListareProcesVerbal", myConnection);
			da.SelectCommand.CommandType = CommandType.StoredProcedure;
			da.SelectCommand.Parameters.Add("@NR_PV", SqlDbType.Decimal);
			da.SelectCommand.Parameters["@NR_PV"].Value = NR;

			da.SelectCommand.Parameters.Add("@DATA", SqlDbType.SmallDateTime);
			da.SelectCommand.Parameters["@DATA"].Value = data;

			da.Fill(dt);

			crConnectionInfo.ServerName = MainForm.SERVER;
			crConnectionInfo.DatabaseName = "Pro";
			crConnectionInfo.UserID = "user";
			crConnectionInfo.Password = "say";

			reportDocument = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
			reportdocument.Load("c:\\pro\\rapoarte\\ProcesVerbal.rpt");
			reportdocument.SetDataSource((DataTable)dt);
			reportdocument.SetDatabaseLogon("user", "say", MainForm.SERVER, "Pro", true);

			ParameterRangeValue rangeVal = new ParameterRangeValue();
			ParameterField paramField = new ParameterField();
			ParameterFields paramFields = new ParameterFields();

			ParameterDiscreteValue paramDiscreteValue1 = new ParameterDiscreteValue();
			ParameterDiscreteValue paramDiscreteValue2 = new ParameterDiscreteValue();

			paramField = new ParameterField();
			paramField.ParameterFieldName = "@NR_PV";
			paramField.ParameterValueType = ParameterValueKind.NumberParameter;
			paramDiscreteValue1.Value = NR;
			paramField.CurrentValues.Add(paramDiscreteValue1);
			paramFields.Add(paramField);

			paramField = new ParameterField();
			paramField.ParameterFieldName = "@DATA";
			paramField.ParameterValueType = ParameterValueKind.DateParameter;
			paramDiscreteValue2.Value = data;
			paramField.CurrentValues.Add(paramDiscreteValue2);
			paramFields.Add(paramField);

			crystalReportViewer1.ParameterFieldInfo = paramFields;

			crTables = reportdocument.Database.Tables;
			for (int i = 0; i < crTables.Count; i++)
			{
				crTable = crTables[i];
				crTableLogOnInfo = crTable.LogOnInfo;
				crTableLogOnInfo.ConnectionInfo = crConnectionInfo;
				crTable.ApplyLogOnInfo(crTableLogOnInfo);
			}

			crystalReportViewer1.DisplayToolbar = true;
			crystalReportViewer1.DisplayStatusBar = true;
			crystalReportViewer1.ReportSource = reportDocument;
Deci, inca o data: exact acelasi cod in unele locuri merge, in altele nu. Evident, la mine pe comp merge!
Multumesc mult!

Edited by ThePuiu, 13 December 2007 - 12:29.


#20
ManuV

ManuV

    Junior Member

  • Grup: Members
  • Posts: 84
  • Înscris: 15.03.2007

View PostThePuiu, on Dec 13 2007, 13:27, said:

Ma lipesc si eu aici cu o problema care ma dispera de vro 2 zile.... Am o aplicatie care ruleaza in 10 locuri pe 10 server SQL 2000 MSDE. Totul e ok, mai putin un raport care pe unele retele merge, pe altele nu! Precizez ca este acelasi program pus, pe aceeasi baza de date.... In unele locuri apare la lansarea raportului fereastra de logon cu username, psw, nume server, etc. Atasez codul folosit sa va uitati prin el, poate va vine voua o idee...

Deci, inca o data: exact acelasi cod in unele locuri merge, in altele nu. Evident, la mine pe comp merge!
Multumesc mult!


Am avut si eu o problema asemanatoare, am rezolvat-o citind connection string din web.config si utilizand server.mappath. Uite un exemplu:
	Protected Sub Affiche_FacturesUnBC(ByVal iNoBC As Integer, ByVal sTypeBC As String)
		ltrTitre.Text = "La liste des factures attachées au bon de commande n° " + CStr(iNoBC)

		Dim Conn As SqlClient.SqlConnection
		Dim strConn As String

		Conn = Nothing

		strConn = ConfigurationManager.ConnectionStrings("MyConnectionString").ToString()
		Conn = New System.Data.SqlClient.SqlConnection(strConn)

		Dim strSql As String

		strSql = "SELECT iNo_Fact, dtDateFact, mMontantHT, mMontantHT * mTVAPourcentage / 100 AS mTVA, " + _
			"mMontantHT + mMontantHT * mTVAPourcentage / 100 AS mTTC, " + _
			"mMontantHT + mMontantHT * mTVAPourcentage / 100 - mSolde AS mRegle, mSolde " + _
			"FROM Factures WHERE (frkBC_ID = @iNoBC) " + _
			"ORDER BY iNo_Fact"


		Dim dt As DataTable = New DataTable()
		Dim da As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter(strSql, Conn)
		da.SelectCommand.CommandType = CommandType.Text
		da.SelectCommand.Parameters.AddWithValue("@iNoBC", iNoBC)
		da.Fill(dt)

		Dim reportDocument = New CrystalDecisions.CrystalReports.Engine.ReportDocument()
		reportdocument.Load(Server.MapPath("~/rapports/rptFacturesUnBC.rpt"))
		reportdocument.SetDataSource(dt)

		Dim htParametres As New Hashtable
		htParametres.Add("@iNoBC", iNoBC)
		htParametres.Add("@sTypeBC", sTypeBC)
		SetParametres(crVw, htParametres)

		crVw.ReportSource = reportDocument

	End Sub



	Shared Sub SetParametres(ByVal viewer As CrystalDecisions.Web.CrystalReportViewer, ByVal parametres As Hashtable)
		Dim param As ParameterField
		Dim params As New ParameterFields
		Dim valeurDiscrete As ParameterDiscreteValue

		For Each element As DictionaryEntry In parametres
			param = New ParameterField()
			param.Name = element.Key
			valeurDiscrete = New ParameterDiscreteValue()
			valeurDiscrete.Value = element.Value
			param.CurrentValues.Add(valeurDiscrete)
			params.Add(param)
		Next

		viewer.ParameterFieldInfo = params
	End Sub



#21
ManuV

ManuV

    Junior Member

  • Grup: Members
  • Posts: 84
  • Înscris: 15.03.2007
Intr-un proiect VB .NET am un raport Crystal Reports, in care am nevoie de subtotaluri la nivel de pagina. Nu reusesc sa configurez asta nici din designer nici din cod. :down:

Are cineva un hint? Multumesc.

#22
shiva

shiva

    Nameless hero. Professional bug slayer mom.

  • Grup: Senior Members
  • Posts: 14,861
  • Înscris: 06.10.2003

View PostManuV, on Feb 6 2008, 16:03, said:

Intr-un proiect VB .NET am un raport Crystal Reports, in care am nevoie de subtotaluri la nivel de pagina. Nu reusesc sa configurez asta nici din designer nici din cod. :down:

Are cineva un hint? Multumesc.

Nu stiu sa existe asa ceva in Crystal Reports.

#23
ulise28

ulise28

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 08.05.2006
In momentul in care vrei subtotalurile inseamna ca datele pe care le vrei afisate sunt grupate intr-un anume fel, corect? Daca iti definesti grupuri poti foarte usor sa adaugi totaluri pentru ele. (Insert-> Summary-> alegi grup).

Daca am inteles eu gresit si se vrea un total la fiecare capat de pagina exista optiunea "Repeat on Horizontal Pages" pentru field-ul summary adaugat.

Edited by shiva, 11 February 2008 - 23:30.
Compacted posts


#24
ManuV

ManuV

    Junior Member

  • Grup: Members
  • Posts: 84
  • Înscris: 15.03.2007

View Postulise28, on Feb 11 2008, 17:37, said:

In momentul in care vrei subtotalurile inseamna ca datele pe care le vrei afisate sunt grupate intr-un anume fel, corect? Daca iti definesti grupuri poti foarte usor sa adaugi totaluri pentru ele. (Insert-> Summary-> alegi grup).

Daca am inteles eu gresit si se vrea un total la fiecare capat de pagina exista optiunea "Repeat on Horizontal Pages" pentru field-ul summary adaugat.

Raportul in chestiune este ceva de genul: afiseaza toate produsele din contractul nr. <n>. Contractul respectiv poate avea atat de multe produse incat sa se listeze pe mai multe pagini, iar userul vrea sa vada, pe fiecare pagina, valoarea produselor de pe acea pagina. Bineinteles, exista la sfarsit totalul general, dar nu exista nici un criteriu de grupare intermediara.

#25
ulise28

ulise28

    Junior Member

  • Grup: Members
  • Posts: 78
  • Înscris: 08.05.2006
Incearca asta:
http://www.codeguru....p/t-288100.html

Si nu uita sa pui header-ul pe fiecare pagina, acolo se reseteaza valoarea sumei din formula.

#26
ManuV

ManuV

    Junior Member

  • Grup: Members
  • Posts: 84
  • Înscris: 15.03.2007

View Postulise28, on Feb 12 2008, 17:42, said:

Incearca asta:
http://www.codeguru....p/t-288100.html

Si nu uita sa pui header-ul pe fiecare pagina, acolo se reseteaza valoarea sumei din formula.


Merci Ulise, m-ai salvat!!

#27
ManuV

ManuV

    Junior Member

  • Grup: Members
  • Posts: 84
  • Înscris: 15.03.2007
Documentul atasat mi-a fost de mare ajutor, poate si altcuiva ii va fi util.

Attached Files



#28
adiharan

adiharan

    Oldest member. Probably

  • Grup: Senior Members
  • Posts: 3,720
  • Înscris: 24.03.2002
Vreau să fac un raport simplu în c# (n-am mai făcut niciodată), probabil cu Crystal Rep. Sau se poate mai simplu?
Ideea e că vreau să iau datele dintr-un form, sursa fiind niște tabele. Raportul ar trebui să conțină doar datele din form-ul respectiv. Se poate face direct un raport din form, sau trebuie să am niște query-uri, ca în Access.

#29
neagu_laurentiu

neagu_laurentiu

    Guru Member

  • Grup: Senior Members
  • Posts: 40,604
  • Înscris: 30.07.2003
Se poate si direct, cele mai multe instrumente de raportare accepta ca sursa de date si obiecte construite de tine (ce au la baza anumite clase mostenite). Cum la fel poti trimite tu la imprimanta direct (asa cum desenezi intr-o fereastra) daca nu vrei un instrumens specializat (desi acestea din urma te ajuta foarte mult).

Anunturi

Chirurgia endoscopică a hipofizei Chirurgia endoscopică a hipofizei

"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală.

Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate