نمایش نتایج 1 تا 16 از 16

نام تاپیک: مشكل با DataEnvironment

  1. #1
    کاربر تازه وارد آواتار yshahab
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    all iran
    پست
    70

    مشكل با DataEnvironment

    سلام .
    من يه مشكلي دارم با DataEnvironment و اون اينه كه وقتي از sql statement استفاده مي كنم اگر فيلدهايي كه تو datareport مي ذارم از يك table باشه مشكلي نيست و گزارش گيري كامله اما وقتي از table ديگه اي يه فيلد انتخاب مي كنم ديگه گزارش نمي ده ! كجاي كارم اشكال داره ؟؟!! در ضمن ديتابيس من اكسس .

  2. #2
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    35
    پست
    4,768

    نقل قول: مشكل با DataEnvironment

    خاصيت DataSource مربوط به DataReport موردنظر رو خالي بزارين. تو sql statement هم از ضرب دكارتي تيبل ها استفاده كنيد.
    اگر متوجه نشديد دستوري كه تو sql statement نوشتيد رو اينجا بزاريد
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

  3. #3
    کاربر تازه وارد آواتار yshahab
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    all iran
    پست
    70

    نقل قول: مشكل با DataEnvironment

    دوست خوبم من كدي ننوشتم ولي اگه منظورتون كدي هست كه در sql statement خودش مي نويسه اينه
    SELECT Piece.Code, Piece.Description, Package.Name, Product.Name AS Expr1, Product.Code AS Expr2 FROM Piece, Package, Product WHERE Piece.Code = Package.Code AND Piece.Code = Product.Code

    بايد دستي كدي مي نوشتم ؟!
    در ضمن وقتي خاصيت datasource رو خالي ميذارم مينويسه Invalid Data Source

  4. #4
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    35
    پست
    4,768

    نقل قول: مشكل با DataEnvironment

    براي DataReport مورد نظر نيازي به ايجاد Command در DataEnvironment نيست.
    و به همين خاطر نبايد به خاصيت DataSource مربوط به DataReport مقدار بديد.
    اينكارو بايد تو زمان كدنويسي انجام بدين. يعني همون دستور بالارو كه يك نوع جستجو هست در DataSource مربوط به ابزار اتصال به بانك قرار بديد و بعد هم Datareport.DataSorce رو Set كنيد به ابزار اتصال به بانك. و در آخر هم report رو نمايش بديد.
    نكته مهم اينكه خاصيت DataField مربوط به TextBox هاي گزارش رو بايد به نام فيلد موردنظر بانك تغيير بديد. چون DataSource گزارش مقداري نداره پس نام فيلدها توي DataField ظاهر نميشه، بايد نام فيلد رو تاپيك كنيد.
    موفق باشيد/
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

  5. #5
    کاربر تازه وارد آواتار yshahab
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    all iran
    پست
    70

    نقل قول: مشكل با DataEnvironment

    يعني همين كد را بنويسم كافيه يا اينكه بايد كد ديگه اي هم اضافه كنم ، ميشه يه مقدار ساده تر راهنمائيم كنين ! ممنون مي شم دوست پر تلاش من

  6. #6
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    35
    پست
    4,768

    نقل قول: مشكل با DataEnvironment

    برنامه ضميمه رو نگاه كنيد.

    توضيح:
    دو تا جدول داريم، تو هركدوم يك فيلد داريم. جدول اولي فيلد Name داره و جدول دومي فيلد Family داره.
    شرط ميزاريم اگه مقادير Name و Family در هركدوم از جدول ها يكسان بود تو گزارش نشون بده.
    تو صفحه گزارش هم دوتا TextBox هست كه DataField شون يكي Name هست و اون يكي Family
    و ديگر هيچ
    موفق باشيد/
    فایل های ضمیمه فایل های ضمیمه
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

  7. #7
    کاربر تازه وارد آواتار yshahab
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    all iran
    پست
    70

    نقل قول: مشكل با DataEnvironment

    دوست خوبم من با يه DataGrid امتحان كردم وقتي از يه table استفاده مي كنم مشكلي نيست ولي وقتي از 2 تا table استفاده مي كنم اين ارور مي ده :
    The specified field 'Code' could refer to more on table listed in the FROM clause of your SQL statement.
    كدهام اينه :

    Private Sub Form_Load()
    On Error Resume Next

    Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db.mdb;"
    Adodc1.RecordSource = "SELECT X,Y FROM Table1,Table2"
    Adodc1.Refresh


    End Sub

  8. #8
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    35
    پست
    4,768

    نقل قول: مشكل با DataEnvironment

    به اين خاطر هست كه فيلدهاتون تو جدولهاي مختلف همنام هستند. (فيلد Code)
    اينجور مواقع بايد تفاوتي بينشون قائل شد. براي همين بعد از نام فيلد مي نويسيم As newName
    و همچنين بايد مشخص كنيم كه هر فيلد متعلق به كدوم جدول هست. براي اين كار قبل از نام فيلد بايد نام جدول رو بنويسيد و يك نقطه بگذاريد و بعد نام فيلد رو بنويسيد.
    مثل زير:

    "SELECT table1.Code,table2.Code as n2 FROM table1,table2 where table1.Code=table2.Code"

    كه اينجا فيلد Code از جدول دوم رو با نام n2 (يه نام دلخواه) صدا ميزنيم.
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

  9. #9
    کاربر تازه وارد آواتار yshahab
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    all iran
    پست
    70

    نقل قول: مشكل با DataEnvironment

    ممنون از كمكتون مشكلم حل شد ولي يه سوال اگه جواب بدين ممنون مي شم حالا من در datagrid اطلاعاتي كه مي خوام دارم چه جوري مي شه كه من روي يكي از رديف هاي datagrid كليك كنم فقط همون رديف در datareport بياد الان به اينجا رسيدم كه كل اطلاعات ذخيره شده را در datareport مي بينم مي خوام روي يه رديف datagrid كليك كنم و فقط همون رديف نمايش داده بشه ممنون از لطفتون با عرض شرمندگي

  10. #10
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    35
    پست
    4,768

    نقل قول: مشكل با DataEnvironment

    فكر نمي كنم بشه با DataGrid به محتواي cell ها دسترسي داشت.
    ولي اگر از Vsflex استفاده كنيد ميشه با متد TextMatrix به سلول ها دسترسي داشته باشيد و بعد هم مستقيماً ارسالشون كنيد به صفحه گزارش.
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

  11. #11
    کاربر تازه وارد آواتار yshahab
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    all iran
    پست
    70

    نقل قول: مشكل با DataEnvironment

    پس چجوري ميشه تنها يه رديف از يك table ديتا بيس رو پرينت گرفت ؟!

  12. #12
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    35
    پست
    4,768

    نقل قول: مشكل با DataEnvironment

    همون يك رديف(ركورد) رو select كنيد.
    البته من كه نمي دونم شما هدفتون چيه و آيا مي تونيد براي اين كار از يه DataReport ديگه استفاده كنيد يا نه. آيا امكان داره كه بعداً بخواين بجاي يك ركورد، دو يا چند ركورد رو گزارش بگيريد؟

    به هر حال شما مي تونيد از Label بجاي TextBox تو صفحه گزارش استفاده كنيد.
    و بعد:

    DataReport1.Sections("Section2").Controls("Label1").Caption = DataGrid1.Columns.Item(0)
    DataReport1.Sections("Section2").Controls("Label2").Caption = DataGrid1.Columns.Item(1)
    DataReport1.Sections("Section2").Controls("Label3").Caption = DataGrid1.Columns.Item(2)
    ' ...
    DataReport1.Show
    DataSource هم هرچي مي خواين بزارين ولي تو صفحه گزارش textboxي نباشه كه به فيلدهاي جدول وصل باشه.
    آخرین ویرایش به وسیله xxxxx_xxxxx : جمعه 11 اردیبهشت 1388 در 19:43 عصر
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

  13. #13
    کاربر تازه وارد آواتار yshahab
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    all iran
    پست
    70

    نقل قول: مشكل با DataEnvironment

    ممنونم ، من بيشتر منظورم با همون datareport ، يه مثال ساده بزنم اينكه ما مشخصات يه سري افراد مثل اسم ، فاميا ، شماره شناسنامه ، نام پدر را در table مشخصات وارد مي كنيم وقتي در datareport گزارش مي گيرم همه مشخصات ذخيره شده نمايش داده ميشه من اينو نميخوام مثلا من فقط مشخصات (علي ) رو مي خوام

  14. #14
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    35
    پست
    4,768

    نقل قول: مشكل با DataEnvironment

    خب اين كه شد همون موضوع اول. مگه نمي گفتيد كه كاربر رو DataGrid كليك كنه و اون ركورد رو تو گزارش بياره؟!!!

    براي اين چيزي كه الان مي گيد شما بايد مشخصات فرد موردنظر رو جستجو كنيد. نتيجه رو ست كنيد رو Datareport.DataSource.

    ضميمه رو نگاه كنيد:
    فایل های ضمیمه فایل های ضمیمه
    • نوع فایل: rar A.rar‏ (24.6 کیلوبایت, 157 دیدار)
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

  15. #15

    Unhappy نقل قول: مشكل با DataEnvironment

    نقل قول نوشته شده توسط xxxxx_xxxxx مشاهده تاپیک
    خب اين كه شد همون موضوع اول. مگه نمي گفتيد كه كاربر رو DataGrid كليك كنه و اون ركورد رو تو گزارش بياره؟!!!

    براي اين چيزي كه الان مي گيد شما بايد مشخصات فرد موردنظر رو جستجو كنيد. نتيجه رو ست كنيد رو Datareport.DataSource.

    ضميمه رو نگاه كنيد:
    سلام. من این کارو انجام دادم ولی خطای :
    failed getting rowset(s) from current data base
    داد. این یعنی چی اونوقت؟ ممنون.

  16. #16
    VIP آواتار xxxxx_xxxxx
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    X place
    سن
    35
    پست
    4,768

    نقل قول: مشكل با DataEnvironment

    نقل قول نوشته شده توسط farkhondehkar مشاهده تاپیک
    سلام. من این کارو انجام دادم ولی خطای :
    failed getting rowset(s) from current data base
    داد. این یعنی چی اونوقت؟ ممنون.
    اگر امکانش هست اون قسمت از برنامه تون رو اینجا قرار بدید.
    من تا حالا با این پیغام مواجه نشدم.
    الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.

برچسب های این تاپیک

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

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