صفحه 1 از 2 12 آخرآخر
نمایش نتایج 1 تا 40 از 48

نام تاپیک: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

  1. #1

    برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام
    دوستان من چند برنامه مجزا را به يك روش نوشتم چندتاي قبلي را نصب كردم و مشكلي نداره ولي يكي را كه بردم روي سيستم مقصد و نصب كردم موقع وارد كردن اطلاعات مشكلي ندارد و درست درج و حذف و ويرايش را انجام ميده اما زماني كه ميخوام گزارش تهيه كنم پيغامي مانند پيغام زير مياد كه از من username و password ميخواد در صورتي كه من هيچگونه password روي گزارش نگذاشتم .
    دوستان موضوع خيلي حياتي وو حيثيتي شده خواهشا بررسي كنيد چون زياد وقت ندارم
    عکس های ضمیمه عکس های ضمیمه

  2. #2
    کاربر دائمی آواتار M.YasPro
    تاریخ عضویت
    آبان 1386
    محل زندگی
    Kernel
    پست
    1,171

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام
    عکس کامل نمیاد .
    ولی احتمالا شما از ویزارد برای کانکت شدن به دیتابیس استفاده کردید و اطلاعات رو کامل اونجا وارد نکردید که تو runtime از شما میپرسه .

  3. #3

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    دوست عزيز من از ويزارد استفاده نكردم از طريق كد نويسي انجام دادم همه چيز درست پيش ميره درست در زماني كه ميخواد اطلاعات را بياره اينطوري ميشه شما مي گي چيكار كنم منم كه با express كار مي كنم

  4. #4

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    اينم اضافه كنم كه من 4 جدول را با هم در يك گزارش دارم طراحي ميكنم و روي سيستم من مشكلي نداره ولي روي سيستم مقصد مشكل داره

  5. #5
    کاربر دائمی آواتار s.khoshfekran
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    تهران
    پست
    503

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    دوست عزیز از tableLogOnInfo استفاده کن یه search بزنی حل میشه!!
    اینم شاید بدردت بخوره

    reportDocument1.SetDatabaseLogon("","")

    بازم اگه سوالی بود در خدمتم!

  6. #6
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام
    شما می تونید تابعی جداگانه تعریف کنید(در فرم گزارش) و با نوشتن چند خط کد عمل set کردن دیتابیس را انجام بدید.مثلا تابعی به صورت زیر
     private void setConnection(CrystalDecisions.CrystalReports.Engi  ne.ReportClass reportClass)
    {
    CrystalDecisions.Shared.TableLogOnInfo myLogin;
    foreach (CrystalDecisions.CrystalReports.Engine.Table myTable in reportClass.Database.Tables)
    {
    myLogin = myTable.LogOnInfo;
    myLogin.ConnectionInfo.IntegratedSecurity = true;
    myLogin.ConnectionInfo.ServerName = @".\SQLEXPRESS";
    myTable.ApplyLogOnInfo(myLogin);
    }
    }


    حالا هر جایی که بخواید گزارش را load کنید میتونید از این تابع استفاده کنید، به طور مثال:
    CrystalReport1 reportDocument = new CrystalReport1();
    setConnection(reportDocument);
    crystalReportViewer1.ReportSource = reportDocument;

  7. #7

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام از شما متشكرم كه به مشكل من رسيدگي كردي د خودم تستش كردم بازم user , pass ميخواد
    hamsaranCrystalReport نام كريستال طراحي شده است كه من فيلد ها را در آن گذاشتم

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using DevComponents.DotNetBar;
    using System.Data.SqlClient;

    namespace khanevade.hamsaran
    {
    public partial class moshakhasathamsaran_report : DevComponents.DotNetBar.Office2007Form
    {
    SqlDataReader dr;
    SqlDataAdapter da;
    SqlConnection con;
    SqlCommand cmd;
    DataSet ds;
    BindingSource bs;

    public moshakhasathamsaran_report()
    {
    InitializeComponent();
    da = new SqlDataAdapter();
    con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\khanevade.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    cmd = new SqlCommand();
    ds = new DataSet();
    bs = new BindingSource();

    }
    private void setConnection(CrystalDecisions.CrystalReports.Engi ne.ReportClass reportClass)
    {
    CrystalDecisions.Shared.TableLogOnInfo myLogin;
    foreach (CrystalDecisions.CrystalReports.Engine.Table myTable in reportClass.Database.Tables)
    {
    myLogin = myTable.LogOnInfo;
    myLogin.ConnectionInfo.IntegratedSecurity = true;
    myLogin.ConnectionInfo.ServerName = @".\SQLEXPRESS";
    myTable.ApplyLogOnInfo(myLogin);
    }
    }

    private void moshakhasathamsaran_report_Load(object sender, EventArgs e)
    {
    hamsaranCrystalReport reportDocument = new hamsaranCrystalReport();
    setConnection(reportDocument);
    crystalReportViewer1.ReportSource = reportDocument;


    da = new SqlDataAdapter(hamsaran.sabt_o_edit_hamsaran.sqlse lect, con);
    da.Fill(ds, "moshakhasathamsaran");
    bs.DataSource = ds.Tables["moshakhasathamsaran"];

    hamsaran.hamsaranCrystalReport h = new hamsaranCrystalReport();
    h.SetDataSource(ds);
    this.crystalReportViewer1.ReportSource =h;


    }
    }
    }


    دوست من هنوز همون مشكل وجود داره و همون خطاي تصوير اول را ميده

  8. #8
    کاربر دائمی آواتار s.khoshfekran
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    تهران
    پست
    503

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    دوست عزیز تو کد sara.f این رو هم اصافه کن ببین درست میشه ؟؟
    reportDocument1.SetDatabaseLogon("","")

  9. #9

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام به همه دوستان تشكر از اينكه جواب داديد من منبع مشكل را پيدا كردم .
    قضيه از اين قراره كه من ابتدا اطلاعات فردي افراد مانند نام و ش .ش و ... را درج ميكنم و سپس در گريد ويو نشان ميدم كه تا اينجا در جدول مشخصات است پس از آن اطلاعات تحصيلات را در جدول تحصيلات و اطلاعات شغل را در جدول شغل درج مي كنم و تمام اين جداول داراي يك كليد اصلي يكسان هستند يعني وقتي روي سطر اول گرديد كليك مي كنم اطلاعات تحصيلات از جدول تحصيلات و اطلاعات شغل از جدول شغل در تكست باكس هايي تعريف كردم نشان داده ميشود كه به اين نوع فرم ها master /details گفته مي شود .
    من امتحان كردم همان گزارشي را كه يوزر و پسوورد ميخواست را با يك جدول طراحي كردم بدون هيچ مشكلي اجرا شد ولي زماني كه با دو يا سه جدول اجرا مي كنم يوزر و پسوورد ميخواد .
    كدها را بصورت زير نوشتم :

    sqlselect = "select * from moshakhasathamsaran";
    hamsaran.moshakhasathamsaran_report frm = new moshakhasathamsaran_report();
    frm.Show();



    اين كد را براي يك دكمه نوشتم و به صفحه ديگري كه crystalReportViewer1 در اونجا قرار داره پاس ميدم .البته اينم بگم اين فقط براي جدول اولي هست و براي جداول ديگر نميدونم چيكار بايد بكنم
    اينم براي فرمي كه در اون crystalReportViewer1 قرار دارد

    private void moshakhasathamsaran_report_Load(object sender, EventArgs e)
    {

    da = new SqlDataAdapter(hamsaran.sabt_o_edit_hamsaran.sqlse lect, con);
    da.Fill(ds, "moshakhasathamsaran");
    bs.DataSource = ds.Tables["moshakhasathamsaran"];

    hamsaran.hamsaranCrystalReport h = new hamsaranCrystalReport();
    h.SetDataSource(ds);
    this.crystalReportViewer1.ReportSource = h;

    }



    دوستان اين مشكل در سيستم خودم وجود نداره فقط روي سيستم مقصد اشكال مي گيره

  10. #10

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    يعني چطوري من كه نرم افزار پكيج تحويل ميدم

  11. #11
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط csharpprogramer88 مشاهده تاپیک
    يعني چطوري من كه نرم افزار پكيج تحويل ميدم
    چیزی که گفتم را فراموش کنید، الان که داشتم کدهاتون را نگاه می کردم چند تا مورد را متوجه نشدم!

  12. #12
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط csharpprogramer88 مشاهده تاپیک
    سلام از شما متشكرم كه به مشكل من رسيدگي كردي د خودم تستش كردم بازم user , pass ميخواد
    hamsaranCrystalReport نام كريستال طراحي شده است كه من فيلد ها را در آن گذاشتم


    private void setConnection(CrystalDecisions.CrystalReports.Engi ne.ReportClass reportClass)
    {
    CrystalDecisions.Shared.TableLogOnInfo myLogin;
    foreach (CrystalDecisions.CrystalReports.Engine.Table myTable in reportClass.Database.Tables)
    {
    myLogin = myTable.LogOnInfo;
    myLogin.ConnectionInfo.IntegratedSecurity = true;
    myLogin.ConnectionInfo.ServerName = @".\SQLEXPRESS";
    myTable.ApplyLogOnInfo(myLogin);
    }
    }

    private void moshakhasathamsaran_report_Load(object sender, EventArgs e)
    {
    hamsaranCrystalReport reportDocument = new hamsaranCrystalReport();
    setConnection(reportDocument);
    crystalReportViewer1.ReportSource = reportDocument;


    da = new SqlDataAdapter(hamsaran.sabt_o_edit_hamsaran.sqlse lect, con);
    da.Fill(ds, "moshakhasathamsaran");
    bs.DataSource = ds.Tables["moshakhasathamsaran"];

    hamsaran.hamsaranCrystalReport h = new hamsaranCrystalReport();
    h.SetDataSource(ds);
    this.crystalReportViewer1.ReportSource =h;


    }
    }
    }


    دوست من هنوز همون مشكل وجود داره و همون خطاي تصوير اول را ميده
    من این کارتون را متوجه نمیشم که چرا دوبار گزارش را به عنوان Source این CrystalReportViewer1 قرار دادید؟

  13. #13

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    فراموش كنم كه نميشه توروخدا يكي يه راه حل بده نميدونم تاپيك بالا منظورم را رسانده يا نه

  14. #14
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط csharpprogramer88 مشاهده تاپیک
    فراموش كنم كه نميشه توروخدا يكي يه راه حل بده نميدونم تاپيك بالا منظورم را رسانده يا نه
    دوست عزیز خب کمک چطوری دیگه؟ شما هم اصل قضیه را بیخیال میشید و انگار فقط همون جمله "فراموش کن " بنده براتون جالبه!
    اگه از من کمک خواستید باید بگم که متاسفانه یا خوشبختانه بنده علم غیب ندارم که حدس بزنم مشکل از کجاست، پس اگر میخواید به جواب برسید به سوالاتی که ازتون میشه پاسخ بدید اونم با دقت.
    حالا برگردید به دوتا پست قبل از این و به سوال پاسخ بدید.
    پیروز باشی.

  15. #15

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم


    hamsaran.hamsaranCrystalReport h = new hamsaranCrystalReport();
    h.SetDataSource(ds);
    this.crystalReportViewer1.ReportSource =h;


    hamsaranCrystalReport نام خود كريستالي هست كه من فيلدهاي جدول را در اونجا گذاشتم و گزارش طراحي كردم ds هم مربوط به DataSet هست

    this.crystalReportViewer1.ReportSource =h;
    اينم كه به معني مشخص كردن ReportSource كريستال است .
    در مورد اين كد :

    hamsaranCrystalReport reportDocument = new hamsaranCrystalReport();
    setConnection(reportDocument);
    crystalReportViewer1.ReportSource = reportDocument;

    خودتون گفتيد ه اينطوري استفاده كنم

  16. #16
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط csharpprogramer88 مشاهده تاپیک

    hamsaran.hamsaranCrystalReport h = new hamsaranCrystalReport();
    h.SetDataSource(ds);
    this.crystalReportViewer1.ReportSource =h;


    hamsaranCrystalReport نام خود كريستالي هست كه من فيلدهاي جدول را در اونجا گذاشتم و گزارش طراحي كردم ds هم مربوط به DataSet هست

    this.crystalReportViewer1.ReportSource =h;
    اينم كه به معني مشخص كردن ReportSource كريستال است .
    در مورد اين كد :

    hamsaranCrystalReport reportDocument = new hamsaranCrystalReport();
    setConnection(reportDocument);
    crystalReportViewer1.ReportSource = reportDocument;

    خودتون گفتيد ه اينطوري استفاده كنم

    من که نگفتم بیاید یه بار یه نمونه به نام ReportDocument تعریف کنید و یه بارم یکی به نام h، اصلا این کار لازم نیست و اشتباه میشه.
    شما وقتی میخواید یک گزارش را load کنید ، باید فقط یک فرم گزارش را به عنوان source به CrystalReportViewer بدید( منظورم در یک زمانه)
    پس این قسمت را کلا حذف کنید.
    hamsaranCrystalReport reportDocument = new hamsaranCrystalReport();
    setConnection(reportDocument);
    crystalReportViewer1.ReportSource = reportDocument;


    و کدتون را اینطوری اصلاح کنید.
     hamsaran.hamsaranCrystalReport h = new hamsaranCrystalReport();
    setConnection(h);
    h.SetDataSource(ds);
    this.crystalReportViewer1.ReportSource = h;


    حالا اجراش کنید و بیبینید دیگه مشکلی نیست؟

  17. #17

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک

    من که نگفتم بیاید یه بار یه نمونه به نام ReportDocument تعریف کنید و یه بارم یکی به نام h، اصلا این کار لازم نیست و اشتباه میشه.
    شما وقتی میخواید یک گزارش را load کنید ، باید فقط یک فرم گزارش را به عنوان source به CrystalReportViewer بدید( منظورم در یک زمانه)
    پس این قسمت را کلا حذف کنید.
    hamsaranCrystalReport reportDocument = new hamsaranCrystalReport();
    setConnection(reportDocument);
    crystalReportViewer1.ReportSource = reportDocument;


    و کدتون را اینطوری اصلاح کنید.
     hamsaran.hamsaranCrystalReport h = new hamsaranCrystalReport();
    setConnection(h);
    h.SetDataSource(ds);
    this.crystalReportViewer1.ReportSource = h;


    حالا اجراش کنید و بیبینید دیگه مشکلی نیست؟

    دوست من درست نشد هنوز هم يوززر و پس ميخواد
    آخرين كدي كه با راهنمايي شما نوشتم :


    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using DevComponents.DotNetBar;
    using System.Data.SqlClient;

    namespace khanevade.hamsaran
    {
    public partial class moshakhasathamsaran_report : DevComponents.DotNetBar.Office2007Form
    {
    SqlDataReader dr;
    SqlDataAdapter da;
    SqlConnection con;
    SqlCommand cmd;
    DataSet ds;
    BindingSource bs;

    public moshakhasathamsaran_report()
    {
    InitializeComponent();
    da = new SqlDataAdapter();
    con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\khanevade.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    cmd = new SqlCommand();
    ds = new DataSet();
    bs = new BindingSource();

    }
    private void setConnection(CrystalDecisions.CrystalReports.Engi ne.ReportClass reportClass)
    {
    CrystalDecisions.Shared.TableLogOnInfo myLogin;
    foreach (CrystalDecisions.CrystalReports.Engine.Table myTable in reportClass.Database.Tables)
    {
    myLogin = myTable.LogOnInfo;
    myLogin.ConnectionInfo.IntegratedSecurity = true;
    myLogin.ConnectionInfo.ServerName = @".\SQLEXPRESS";
    myTable.ApplyLogOnInfo(myLogin);
    }
    }

    private void moshakhasathamsaran_report_Load(object sender, EventArgs e)
    {
    hamsaran.hamsaranCrystalReport h = new hamsaranCrystalReport();
    setConnection(h);
    h.SetDataSource(ds);
    this.crystalReportViewer1.ReportSource = h;
    }
    }
    }


    دوست عزيز به صفحه قبل پست 9 سري بزنيد شايد بهتر بتونيد كمك كنيد

  18. #18
    کاربر دائمی آواتار MahmoudiNik
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    مشهد
    پست
    108

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام
    دوست عزیز نمیدونم این حدسی که میزنم درسته یا نه
    1-اگه به عنوان پنجره نگاه کنید میبینید که به وصل شدن دیتا بیس مربوطه پس به کد زیاد ربطی نداره
    ضمن اینکه در سیستم خودتون درسته
    2-اگر روی سیستم طرف sql را بصورت engine از طریق ستاپ ساز مربوطه نصب میکنید (یا کل اس کیو ال رو سیستمشون نصبه) اونوخت در زمان نصب اس کیو ال نحوع لاگین بصورت
    مخلوط یا با یوزر پسود هستش

    در کل فکر کنم مشکل از دسترسی به جداوله! که با بعضی یوزر ها نمیشه به جداولی دسترسی داشت مثل محیط های شبکه!
    ------------------------------------------------
    راه حل:
    بستری که کامپیوتر شما برنامه را اجرا می کند چک کنید
    سیستم مقابل را مثل سیستم خود بکنید از نظر بستر اجرایی
    --------------------------------------
    موفق باشد

  19. #19

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام دوست من،
    کدی که نوشتی ایراد داره، اما اول یه کار کن، فایل گزارشت رو اینجا بذار یه نیگاه بهش بندازیم.

    دو حالت داره، یا شما داری dataset رو fill میکنی و از اون استفاده میکنی و اطلاعات قراره از اونجا خونده شه، که دیگه کل تابع setConnection بیخوده، یا قراره گزارشت مستقیم به دیتابیس وصل شه و اطلاعات رو از اونجا بخونه، که در اونصورت ConnectionString و Dataset و DataAdapter و Fill کردن DataSet و این قسمتا اضافیه.

    اگه اونطور که خودت گفتی از سه تا جدول ساختی گزارشت رو یعنی دقیقا سه تا جدول رو آوردی داخل گزارش و با هم join کردی، اگه قرار بود از حالت دوم استفاده کنی، یعنی dataset رو fill کنی، باید سه تا DataAdapter میداشتی، اما حالا که فقط یکی داری، یعنی احتمالا از حالت اول داری استفاده میکنی، یعنی ارتباط مستقیم گزارشت با دیتابیس.

    من عموما از روش دوم استفاده میکنم، بنابراین اگه از روش اول رفته باشی ممکنه نتونم کمکت کنم. پنجره ای که باز شده یعنی اطلاعات مربوط به Connect به دیتابیست مشکل داره.
    شما وقتی که SQL Server رو روی سیستم های کلاینتت نصب میکنی دقیقا چه شکلی نصبش میکنی و چه کاربرایی براش تعریف میکنی، آیا وقتی که نصب میشه روی حالت Mixed Mode نصبش میکنی یا نه؟

    موفق باشی

  20. #20

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    یه امتحان هم کن،
    داخل این تابع که نوشتی:
    public moshakhasathamsaran_report()
    {
    InitializeComponent();
    da = new SqlDataAdapter();
    con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\khanevade.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    cmd = new SqlCommand();
    ds = new DataSet();
    bs = new BindingSource();

    }


    خط آخرش بنویس Con.Open() همین، بعد ببین اصلا برنامه ات روی سیستم کلاینتهات خطا نمیده؟
    اگه خطا داد، معنیش اینه که کاربری که برنامه ات داره روش اجرا میشه به SQL دسترسی نداره و مشکل گزارشت هم به همین دلیله.

  21. #21

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    و یه سوال دیگه،
    اون پنجره که باز میشه، وقتی روی Finish کلیک میکنی، گزارشت باز میشه؟

  22. #22

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    آقا من موقع ساخت ستاپ تيك مربوط به اس كيو ال را مي زنم همانطوري كه در پست هاي قبلي گفتم زماني كه گزارش را تغيير دادم و فقط يك جدول قرار دادم مشكلي نداره

  23. #23

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نه عزيزم همچنان كه finish ميزنم بازم ازم يوزر پسوورد مي خواد

  24. #24

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط mn_zandy63 مشاهده تاپیک
    یه امتحان هم کن،
    داخل این تابع که نوشتی:
    public moshakhasathamsaran_report()
    {
    InitializeComponent();
    da = new SqlDataAdapter();
    con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\khanevade.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    cmd = new SqlCommand();
    ds = new DataSet();
    bs = new BindingSource();

    }


    خط آخرش بنویس Con.Open() همین، بعد ببین اصلا برنامه ات روی سیستم کلاینتهات خطا نمیده؟
    اگه خطا داد، معنیش اینه که کاربری که برنامه ات داره روش اجرا میشه به SQL دسترسی نداره و مشکل گزارشت هم به همین دلیله.
    دوست من برنامه كه تحت شبكه نيست .يه برنامه ساده هست كه روي يه سيستم نصب ميشه

  25. #25

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام دوست من،
    خدا خیرت بده، حداقل به احترام تعداد خطوطی که تایپ کردم با توجه میخوندی
    خب اگه وارد نمیشه فرضم رو بیشتر تایید میکنه.

    یه زحمت بکش و کدی که گفتم رو به برنامه ات اضافه کن و تست کن.
    فایل گزارشت رو هم بذار اینجا.
    ممنون.

    موفق باشی

  26. #26

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    راستی یه سوال،
    ببینم بقیه برنامه ات روی سیستم های کاربرت کار میکنه؟
    توی بقیه برنامه ات جای دیگه ای اتصال به دیتابیس داری؟ یعنی هیچ جای دیگهء برنامه هیچ Connection ای open میکنی؟ اگه آره از چه Connection String ای استفاده می کنی؟

    موفق باشی

  27. #27

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    con.Open();
    را اونجايي كه گفتيد قرار دادم ولي بازم همونه هيچ فرقي نكرده

  28. #28

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط mn_zandy63 مشاهده تاپیک
    راستی یه سوال،
    ببینم بقیه برنامه ات روی سیستم های کاربرت کار میکنه؟
    توی بقیه برنامه ات جای دیگه ای اتصال به دیتابیس داری؟ یعنی هیچ جای دیگهء برنامه هیچ Connection ای open میکنی؟ اگه آره از چه Connection String ای استفاده می کنی؟

    موفق باشی
    آره استفاده ميكنم از همين كانكشن ، و مشكل نداره و اجرا ميشه

  29. #29

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    خب، آیا قبل از اینکه این گزارشت باز بشه هیچ کدوم از اون Connection ها باز میشه؟
    ببین شما Connection رو که باز میکنی تازه دیتابیست وصل میشه به SQL Server،
    بنابراین اگه مستقیم رفته باشی سر گزارش اصلا دیتابیست وصل نشده هنوز
    اگه مطمئنی که جاهای دیگه Connection هات دارن به حالت Integrated Security وصل میشن، و قبل از باز شدن این گزارش حداقل یکیشون باز میشه، معنیش اینه که اون خط کدی که بهت گفتم اضافه کنی هم نباید خطا بده، و در نتیجه احتمالا کدی که نوشتی مشکلی نداره، (به جز اون خطوطی که بهت گفتم کلا اضافیه، اما تاثیری تو کل قضیه نمیذارن) و اطلاعات من هم بیشتر از این جواب نمیده.

    در غیر اینصورت احتمالا یا دیتابیست هنوز Attach نشده یا اگه شده کاربر جاری ویندوزت به دیتابیس دسترسی نداره.

    اگه در نهایت جواب نگرفتی گزارشت رو بذار اینجا تا بهت بگم چه شکلی میتونی بدون ارتباط مستقیم گزارش به دیتابیس، گزارشت رو نمایش بدی.

    موفق باشی

  30. #30

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    من با همين كانشن استرينگ سلكت و اينسرت ميكنم و تازه يك از يك بخش ديگه گزارش هم ميگيريم . اما باز هم ميگم زماني كه اين دو جدول را با هم استفاده ميكنم به اين مشكل برميخوره
    فایل های ضمیمه فایل های ضمیمه

  31. #31
    کاربر دائمی آواتار sara.f
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    آنجا که دروغ نباشد!
    پست
    809

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط mn_zandy63 مشاهده تاپیک
    سلام دوست من،
    کدی که نوشتی ایراد داره، اما اول یه کار کن، فایل گزارشت رو اینجا بذار یه نیگاه بهش بندازیم.

    دو حالت داره، یا شما داری dataset رو fill میکنی و از اون استفاده میکنی و اطلاعات قراره از اونجا خونده شه، که دیگه کل تابع setConnection بیخوده، یا قراره گزارشت مستقیم به دیتابیس وصل شه و اطلاعات رو از اونجا بخونه، که در اونصورت ConnectionString و Dataset و DataAdapter و Fill کردن DataSet و این قسمتا اضافیه.

    اگه اونطور که خودت گفتی از سه تا جدول ساختی گزارشت رو یعنی دقیقا سه تا جدول رو آوردی داخل گزارش و با هم join کردی، اگه قرار بود از حالت دوم استفاده کنی، یعنی dataset رو fill کنی، باید سه تا DataAdapter میداشتی، اما حالا که فقط یکی داری، یعنی احتمالا از حالت اول داری استفاده میکنی، یعنی ارتباط مستقیم گزارشت با دیتابیس.

    من عموما از روش دوم استفاده میکنم، بنابراین اگه از روش اول رفته باشی ممکنه نتونم کمکت کنم. پنجره ای که باز شده یعنی اطلاعات مربوط به Connect به دیتابیست مشکل داره.
    شما وقتی که SQL Server رو روی سیستم های کلاینتت نصب میکنی دقیقا چه شکلی نصبش میکنی و چه کاربرایی براش تعریف میکنی، آیا وقتی که نصب میشه روی حالت Mixed Mode نصبش میکنی یا نه؟

    موفق باشی
    سلام
    میخواستم بدونم، مگه واسه همون dataset هم نباید از setconnection استفاده کرد؟
    منظورم اینه که ما چه از dataset استفاده کنیم و چه گزارش را مستقیما به دیتابیس متصل کنیم، به هر حال باید اول کار برای آوردن فیلدها بر روی فرم از جداول موجود در دیتا بیس استفاده کنیم، پس در هر دو صورت باید از setconnection استفاده کنیم. درسته؟

  32. #32

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    فایلت رو گرفتم، نیگاش میکنم،
    امکانش هست، کد بقیه ارتباط ها و نمایش گزارشها رو که ندیدیم.
    شاید جاهای دیگه از روش دوم که چند پست پیش توضیح دادم استفاده کرده باشید.
    موفق باشید

  33. #33

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    دوست عزيز لطف كرديد جواب ميديد فقط با عرض شرمندگي خيلي عجله دارم سريعتر.
    هر كجا كه از گزارش استفاده كردم به همين روشه

  34. #34

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام دوست من،
    متاسفانه احتمالا این آخرین جوابیه که امشب بهت میدم،
    شما گزارشت داره به دیتابیسی به نام khanevade new (دقیقا با همین فاصله) وصل میشه،
    مطمئن نیستم وقتی که از ConnectionString زیر در کدت استفاده می کنی
    con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector  y|\khanevade.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    دقیقا تحت چه نامی Attach میشه و بعدا با چه نامی بهش دسترسی خواهی داشت، و آیا این نام درسته یا نه.

    اما به هر حال میتونی یه تست کنی، روی سیستم طرفت، SQL Server یا فقط Management Studio رو نصب کن، و ببین دیتابیست با چه نامی Attach شده.
    من فکر میکنم مشکلت به این مربوط میشه.

    موفق باشی

  35. #35

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    راستی، این خط
    h.SetDataSource(ds);
    رو حذف کن از کدت. بازم امتحان کن

  36. #36

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    ببخشيد كانكشن استرينگي كه در همه جاي برنامه استفاده مي كنم اينه :

    con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\khanevade new.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");

    اون يك اشكال لپي بود تازه خود بانك را هم همراه برنامه bin\Debug قرار دادم البته جداول فعلا خالي هستن .
    به نظر شما حل شدنيه يا نه

  37. #37

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    خب، کدی که فرستاده بودی رو تغییر دادم،
    برات میذارم، این رو هم تست کن،
    کد خودت رو تغییر دادم، به صورتی که کاملا از کد میخونه و گزارشت مستقیم به دیتابیس وصل نمیشه.
    فقط این خطوط رو چک کن، که اسم جداولت رو درست نوشته باشم، چون با عجله نوشتم ممکنه خطای تایپی داشته باشه:
                var cmd1 = new SqlCommand("Select * from moshakhasathamsaran", con);

    var cmd2 = new SqlCommand("Select * from tahsilathamsaran", con);

    da1.Fill(ds, "moshakhasthamsaran");
    da2.Fill(ds, "tahsilathamsaran");


    من دیگه میرم، فردا چک میکنم، اگه فراموش کردم با ID من در یاهو تماس بگیر.

    موفق باشی
    فایل های ضمیمه فایل های ضمیمه

  38. #38

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط csharpprogramer88 مشاهده تاپیک
    ببخشيد كانكشن استرينگي كه در همه جاي برنامه استفاده مي كنم اينه :

    con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\khanevade new.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    اون يك اشكال لپي بود تازه خود بانك را هم همراه برنامه bin\Debug قرار دادم البته جداول فعلا خالي هستن .
    به نظر شما حل شدنيه يا نه
    کدی که برام گذاشتی کانکشنش همین بود دیگه؟
    من run نکردم کدت رو، اما تغییراتی که دادم باید کار کنه.
    تست کن
    موفق باشی

  39. #39

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    نقل قول نوشته شده توسط sara.f مشاهده تاپیک
    سلام
    میخواستم بدونم، مگه واسه همون dataset هم نباید از setconnection استفاده کرد؟
    منظورم اینه که ما چه از dataset استفاده کنیم و چه گزارش را مستقیما به دیتابیس متصل کنیم، به هر حال باید اول کار برای آوردن فیلدها بر روی فرم از جداول موجود در دیتا بیس استفاده کنیم، پس در هر دو صورت باید از setconnection استفاده کنیم. درسته؟
    سلام دوست عزیز من،
    شما برای دسترسی به اطلاعات دیتابیس از هر روشی که استفاده کنی اتصال به دیتابیس رو نیاز داری، اما دو حالت داره. یا دیتاست رو Fill میکنی، که در اونصورت از connection و command و dataadapter استفاده می کنی، و به این شکل به دیتابیس وصل میشی (با open شدن connection). یا گزارشت رو مستقیما وصل میکنی به دیتابیس که باید اطلاعات مربوط به connection رو روی گزارش set کنی که در کد ایشون کد مربوط به این کار در تابعی به اسم setconnection قرار داره. بنابراین در حالت اول به این تابع نیازی نیست.

    کد ایشون رو که تغییر دادم به این شکل در اومد:
    namespace tempreport
    {
    public partial class moshakhasathamsaran_report : Form
    {
    public moshakhasathamsaran_report()
    {
    InitializeComponent();
    }

    private void moshakhasathamsaran_report_Load(object sender, EventArgs e)
    {
    var con = new SqlConnection(@"Data Source=.;AttachDbFilename=|DataDirectory|\khanevad e new.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    var cmd1 = new SqlCommand("Select * from moshakhasathamsaran", con);
    var da1 = new SqlDataAdapter(cmd1);

    var cmd2 = new SqlCommand("Select * from tahsilathamsaran", con);
    var da2 = new SqlDataAdapter(cmd2);

    var ds = new DataSet();
    da1.Fill(ds, "moshakhasthamsaran");
    da2.Fill(ds, "tahsilathamsaran");

    var h = new hamsaranCrystalReport();
    h.SetDataSource(ds);
    crystalReportViewer1.ReportSource = h;
    }
    }
    }

    همون طور که میبینید به اون تابع setconnection نیاز نیست، البته این کد تغییر یافته کد خودشون هست میتونه زیباتر از این هم باشه.

    موفق باشی

  40. #40

    نقل قول: برنامه را نصب كردم روي سيستم مقصد موقع گزارش گرفتن پسوورد ميخواد در صورتي كه پسوورد نگذاشتم

    سلام و واقعا ممنونم كه وقت گذاشتي برام مشكل قبلي به خير و خوشي تمام شده حالا يك سوال دارم :
    اگر بخوام به كاربر اين امكان را بدم كه خودش مثلا بر اساس اينكه تحصيلات و رشته جستجو كنه چيكار بايد بكنم كوئري كه نوشتم بصورت زير است

    var cmd1 = new SqlCommand("select * from moshakhasat where id in (select id from tahsilat where maghta='+ليسانس+' and reshte'+كامپيوتر+' and madrak ='+ليسانس+')", con);

    دوست من به اين نكته توجه كن كه من ميخوام تمام سطرهايي از اين دو جدول را كه داراي اون شرط ها هستند را بازيابي كنم يعني سطرهايي كه داراي اون شرط هستند هم مشخصات فردي و هم تحصيلات با هم در گزارش چاپ شوند البته اينم بگم اين كوئري را نوشتم و در روي سيستم خودم جواب گرفتم و مشكلي نداره .
    با تشكر

صفحه 1 از 2 12 آخرآخر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •