Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проблема
|
|||
|---|---|---|---|
|
#18+
Такая проблема(понял что по маленьким вопросам-не добьюсь ничего): Есть форма на ней 2 кнопки: Первая кнопка вызывает defaut4.aspx с отчетом-всё отлично!(Response.Redirect) Вторая кнопка открывает новое окно, но тоже default4.aspx но там отчета нету, т.е открывается пустое пдф окно. Что странно если на default4.aspx поставить кнопку при нажатии на которую появится отчёт (inline) то и там и там открывается полный отчёт... Отчет с параметрами через session от default3.aspx. Посоветуйте что сделать.. Я думал сделать автонажатии кнопки но незнаю как.. а больше вариантов нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 18:07 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
вторая кнопка нужна только для того, чтобы открывалось новое окно? а формируется отчет на дефолт3? и в сессию кидается? а в дефолт4 из сессии вытаскивается? так что ли? что то ты замутил. если отчет генерится и кидается в сессию в дефолт3 - так посмотри что у тебя в сессии в дефолт4, у меня такое ощущение, что ты генеришь отчет перед редиректом, естественно открывая новое окно - отчета в сессии нет. куясе я роман нопесал аж самому страшно стало домой новерное пора ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 18:25 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
1. Да кнорка нужна только для открытия дефолта4. 2. Отчёт на дефолт3 по сессиям и вытаскивактся в дефолт4. 3. Нет Редирект первее, + к кнопке открывающей новое окно... Редирект не очень нужен BtnOk1.Attributes.Add("onclick", "window.open('default4.aspx');return false"); Но я не понимаю... Почему открывая одну и туже страницу разными способами ..в одном случае открывается, а в другом нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 18:32 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
посмотри что у тебя в сессии в дефолт4 по идее там должен быть null когда ты делаешь window.open(); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 18:35 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
Всмысле посмотреть? Как? вывести сессию через лэйблы... уже стёр лэйблы... там всё выводилось я проверял...я видел (То ли это?) Ну а как от этого нулл тогда избавится? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 18:37 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
ещё есть this.RegisterStartupScript("OnLoad", "<script language ='javascript'>" + Button1.ClientID + ".click();</script>"); но не работает! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 18:49 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
короче давай код дефолт4 в студию так тебя просто не возможно понять ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 18:56 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
public partial class Default4 : System.Web.UI.Page { public String MyCallParams; public String ReportName; public String ReportParams; protected void Page_Load(object sender, EventArgs e) { this.RegisterStartupScript("OnLoad", "<script language ='javascript'>" + Button1.ClientID + ".click();</script>"); } private void ProcessWebservice4(String ReportName, String ReportParams) { ebkservice.IWebPrintServiceservice Webservice = new ebkservice.IWebPrintServiceservice(); Byte[] Data = Webservice.getPdfReport(ReportName, ReportParams); Response.ContentType = "application/pdf"; Response.Charset = "Windows-1251"; Response.AddHeader("Content-Disposition", "inline"); Response.BinaryWrite(Data); Response.End(); } protected void Button1_Click(object sender, EventArgs e) { if (Session["name"].ToString() == "APlan-/A-Gang / Arbeits-Gang") { Session["params"].ToString(); ProcessWebservice4("TRep_Arbeitsgang", Session["params"].ToString()); } if (Session["name"].ToString() == "APlan-/A-Gang / Arbeits-Plan") { Session["params2"].ToString(); ProcessWebservice4("TrptArbeitsplan", Session["params2"].ToString()); } if (Session["name"].ToString() == "Status / Kommissions-Status") { Session["params3"].ToString(); ProcessWebservice4("TRep_KommStatus", Session["params3"].ToString()); } } } Вот дефаулт4. Простите за немецкий. Сам его незнаю... но тут он и не нужен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 19:02 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
хорошо, надо было конечно код дефолт3 а на дефолт4 тоже есть кнопка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 19:07 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
а,я понял, это ты эксперементировал :) давай код дефолт3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 19:08 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
давай быстрее, домой уже пора ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 19:08 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
Что странно если на default4.aspx поставить кнопку при нажатии на которую появится отчёт (inline) то и там и там открывается полный отчёт... Отчет с параметрами через session от default3.aspx. Посоветуйте что сделать.. Я думал сделать автонажатии кнопки но незнаю как.. а больше вариантов нет ---------Это мой первый пост----------------------------- можно и убрать я вот и спрашиваю... либо как сделать авто нажатие кнопки, либо как сделать без нее. Дефаулт3 очень большой... Кнопка генерации отчета: protected void btnOk_Click(object sender, EventArgs e) { Session["name"] = lblReportname.Text; Session["params"] = MyCallParams = "qd_arbeitsgang|betr_auftrag_id|" + ddlPosition.SelectedValue; Session["params2"] = MyCallParams = "qd_position|position_id|" + ddlPosition.SelectedValue; Session["params3"] = MyCallParams = "qd_kommission|kommission_id|" + ddlKommission.SelectedValue + "," + "qd_position|position_id|" + ddlPosition.SelectedValue + "," + "variable|nuroffenepos|true"; Response.Redirect("default4.aspx"); if (lblReportname.Text == "APlan-/A-Gang / Arbeits-Gang") { MyCallParams = "qd_arbeitsgang|betr_auftrag_id|" + ddlPosition.SelectedValue; Session["Klas"] = "TRep_Arbeitsgang"; ProcessWebservice("TRep_Arbeitsgang", MyCallParams); } if (lblReportname.Text == "APlan-/A-Gang / Arbeits-Plan") { MyCallParams = "qd_position|position_id|" + ddlPosition.SelectedValue; Session["Klas"] = "TrptArbeitsplan"; ProcessWebservice("TrptArbeitsplan", MyCallParams); } if (lblReportname.Text == "Status / Kommissions-Status") { MyCallParams = "qd_kommission|kommission_id|" + ddlKommission.SelectedValue + "," + "qd_position|position_id|" + ddlPosition.SelectedValue + "," + "variable|nuroffenepos|true"; Session["Klas"] = "TRep_KommStatus"; ProcessWebservice("TRep_KommStatus", MyCallParams); } } ну сам отчет ProcessWebservice можно взять тот же... и открытие окна яваскрипта я кидал.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 19:12 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
короче Session["name"] = lblReportname.Text; Session["params"] = MyCallParams = "qd_arbeitsgang|betr_auftrag_id|" + ddlPosition.SelectedValue; Session["params2"] = MyCallParams = "qd_position|position_id|" + ddlPosition.SelectedValue; Session["params3"] = MyCallParams = "qd_kommission|kommission_id|" + ddlKommission.SelectedValue + "," + "qd_position|position_id|" + ddlPosition.SelectedValue + "," + "variable|nuroffenepos|true"; Response.Redirect("default4.aspx"); у тебя в оброботчике клика стоит - занос данных в сессию а потом редирект. ты должен вот это сделать в пейджлоад: Session["name"] = lblReportname.Text; Session["params"] = MyCallParams = "qd_arbeitsgang|betr_auftrag_id|" + ddlPosition.SelectedValue; Session["params2"] = MyCallParams = "qd_position|position_id|" + ddlPosition.SelectedValue; Session["params3"] = MyCallParams = "qd_kommission|kommission_id|" + ddlKommission.SelectedValue + "," + "qd_position|position_id|" + ddlPosition.SelectedValue + "," + "variable|nuroffenepos|true"; тогда и window.open() юзай з.ы. все, успехов, побежал пить пиво. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 19:16 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
Хмммм... чё то не ворк...Спасибо! Сейчас подумаем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 19:27 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
protected void Page_Load(object sender, EventArgs e) { Session["name"] = lblReportname.Text; Session["params"] = MyCallParams = "qd_arbeitsgang|betr_auftrag_id|" + ddlPosition.SelectedValue; Session["params2"] = MyCallParams = "qd_position|position_id|" + ddlPosition.SelectedValue; Session["params3"] = MyCallParams = "qd_kommission|kommission_id|" + ddlKommission.SelectedValue + "," + "qd_position|position_id|" + ddlPosition.SelectedValue + "," + "variable|nuroffenepos|true"; BtnOk1.Attributes.Add("onclick", "window.open('default4.aspx');return false"); DateTime dt = System.DateTime.Today; lblDatum.Text = String.Format("{0:dd.MM.yyyy}", dt); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 19:35 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
вот смотри: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. а вернее - обработка события клик btnOk где весь код страницы дефолт3? дальше: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. ты пытаешься при загрузке этой страницы вызвать код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. разве нельзя сделать так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. вообще, имхо, тут полный бардак - меняй весь код, и объясни плиз ЧТО ТЫ ХОЧЕШЬ СДЕЛАТЬ? - если я правильно понял - ты хочешь по клик на кнопке в дефолт3 - открыть новое окно дефолт4? - тогда вот этот код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. все это можно сделать на дефолт3. если хочешь, чтобы отчет сформировался в отдельном окне - заюзай HttpHandler - и передавай ему необходимые параметры в том же get'е, только все ненужное скрывай, тулбары там и прочую хню. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 21:51 |
|
||
|
Проблема
|
|||
|---|---|---|---|
|
#18+
Объясняю! Мне это нужно было для того что... Был отчет! Генерировался на дефолт 3... открывался inline Мне нужно было сделать чтобы открывался в новом окне отчёт... Я спрашивал... сам пробовал! Этого сделать нельзя... Что я сделал тогда?-Я сделал просто Дефолт4 в который занёс параметры отчета...и при нажатии на кнопку открывается Дефолт 4 и там inline открывается отчет. Вот что надо было... Теперь в реальность: public partial class Default4 : System.Web.UI.Page { public String MyCallParams; public String ReportName; public String ReportParams; protected void Page_Load(object sender, EventArgs e) { if (Session["name"].ToString() == "APlan-/A-Gang / Arbeits-Gang") { Session["params"].ToString(); ProcessWebservice4("TRep_Arbeitsgang", Session["params"].ToString()); } if (Session["name"].ToString() == "APlan-/A-Gang / Arbeits-Plan") { Session["params2"].ToString(); ProcessWebservice4("TrptArbeitsplan", Session["params2"].ToString()); } if (Session["name"].ToString() == "Status / Kommissions-Status") { Session["params3"].ToString(); ProcessWebservice4("TRep_KommStatus", Session["params3"].ToString()); } } private void ProcessWebservice4(String ReportName, String ReportParams) { ebkservice.IWebPrintServiceservice Webservice = new ebkservice.IWebPrintServiceservice(); Byte[] Data = Webservice.getPdfReport(ReportName, ReportParams); Response.ContentType = "application/pdf"; Response.Charset = "Windows-1251"; Response.AddHeader("Content-Disposition", "inline"); Response.BinaryWrite(Data); Response.End(); } } Про это собственно и был первый мой пост:) я так и пытаюсь сделать... но открывается пустой лист в новом окне. А вторая дополнительная кнопка открывает этот же дефолт4 с отличным отчетом. Вот собственно! И вот идеи postback и Request.Form Но как? я не опытен в этих делах... поэтому и просил помощи! Как это лучше сделать и главное как? Спасибо заранее! Ну и за это тоже! P.S. А вот с хэндлером мне кажется не то, т.к. метод get!! я пытался поставить его на форму-у меня всё отказывалось работать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2006, 22:46 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=34048510&tid=1388671]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
84ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
76ms |
get tp. blocked users: |
2ms |
| others: | 256ms |
| total: | 471ms |

| 0 / 0 |
