Школоло / Говнокод #27977 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
with ZeoDataModule.TmpZQuery do
  begin
    ZeoDataModule.TmpZQuery.Close;
    ZeoDataModule.TmpZQuery.SQL.Clear;
    //ZeoDataModule.TmpZQuery.SQL.Add(ZeoDataModule.zqryOstatki.SQL.Text);
    ZeoDataModule.TmpZQuery.SQL.Add(TZQuery(dbgrdh1.DataSource.DataSet).SQL.Text);
//    ZeoDataModule.Add ('select  *,''0.00'' as str_cen from material.ostatki_by_skladid(:skladid,:dt) ');
    ZeoDataModule.TmpZQuery.SQL.Add (' and  tovarid in(');
    for i:=0 to OstatkiTovarList.Count-1 do
    begin
      ZeoDataModule.TmpZQuery.SQL.Add(ostatkiTovarList[i]);
      if i< OstatkiTovarList.Count-1 then
        ZeoDataModule.TmpZQuery.SQL.Add(',');
    end;
    ZeoDataModule.TmpZQuery.SQL.Add(')');
    ZeoDataModule.TmpZQuery.SQL.Add('order by nt');
    //-------
    zQ_sv:= DataModulePrint.frxDBDatasetOstatki.DataSet as TZQuery;   // zqryOstatki
    //--------
    ZeoDataModule.zqrySumBySS.Close;
//    ZeoDataModule.zqrySumBySS.SQL.Add('select :dt,:skladid from material.globalvalues where 1=2'); //  пустой набор
    ZeoDataModule.zqrySumBySS.ParamByName('skladid').Value:=10000;  // несуществующий склад (пустой набор)
    ZeoDataModule.zqrySumBySS.Open;

    ZeoDataModule.TmpZQuery.ParamByName('skladid').Value:=zQ_sv.ParamByName('skladid').Value;
    ZeoDataModule.TmpZQuery.ParamByName('dt').AsDate:=zQ_sv.ParamByName('dt').AsDate;
    ZeoDataModule.TmpZQuery.Open;

    DataModulePrint.frxDBDatasetOstatki.DataSet := ZeoDataModule.TmpZQuery;
    DataModulePrint.frxDBDatasetSumBySS.DataSet := ZeoDataModule.zqrySumBySS;
    if TypeVed=USUAL_OST then
    begin
      if Material.TypeSkladId = 4 then
        DataModulePrint.ShowReport('ostatki.fr3')
      else
        DataModulePrint.ShowReport('ostatki.fr3')
    end
    else if TypeVed = NO_MOVE_OST then
      DataModulePrint.ShowReport('ostatki_no_move.fr3');

    ZeoDataModule.TmpZQuery.Close;

    DataModulePrint.frxDBDatasetOstatki.DataSet := zQ_sv;
    ZeoDataModule.zqrySumBySS.Close;
    ZeoDataModule.zqrySumBySS.ParamByName('skladid').Value:=Material.Skladid;
//    ZeoDataModule.zqrySumBySS.SQL.Clear();
//    ZeoDataModule.zqrySumBySS.SQL.Add(sqlSum_sv); 
    ZeoDataModule.zqrySumBySS.Open;
  end;

ZeoDataModule.TmpZQuery.SQL.Add(TZQuery( dbgrdh1.DataSource.DataSet).SQL.Text); - особенно понравилось. Молчу про "with".

Запостил: Baiumka Baiumka, (Updated )

Комментарии (4) RSS

  • Паскальные приведения напоминают шоу "поцелуй задницу", где доброволец должен поцеловать максимальное количество женских задниц, среди которых скрыта одна мужская.
    Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8