Форум OlegON > Программы и оборудование для автоматизации торговли > Системы автоматизации торговли > Супермаг Плюс (Супермаг 2000)

FastReport : CS0103 имя SUPERMAG отсутствует в текущем контексте : Супермаг Плюс (Супермаг 2000)

25.11.2024 19:20


28.02.2020 10:21
При создании нового отчета (из шаблона) rep_oracle.frx
выдает ошибку при прокрутке отчета
после добавления sql скриптов в бэнды в этом коде нужно что-то редактировать?
SQL код:
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Drawing;
using System.Data;
using System.Reflection;
using FastReport;
using FastReport.Data;
using FastReport.Dialog;
using FastReport.Table;
using FastReport.Utils;
using FastReport.Format;

using Sm.FastReports;
using Sm.FastReports.Link;
using Sm.Interfaces;
using Sm.Objects;
using Sm.Core;

namespace FastReport
{
  public class ReportScript
  {
    RepHost host;
    string sLocTitle;
  
    private void _StartReport(object sender, EventArgs e)
    {          
      // Хост отчёта
      host = new RepHost(Report);
  
      // Контрагент "От имени"
      txtUserName.Text = RepClientInfo.GetClientName(host.Connection, Report.GetParameterValue("P_USER_ID"));
      
      // Заголовок выбранных мест хранения
      if ( ToInt32(Report.GetParameterValue("P_STORED_ALL")) == 1 )
      {  
        sLocTitle = "Места хранения: "+ToString(Report.GetParameterValue("P_STORED_NAME"));
      }
      else if ( ToInt32(Report.GetParameterValue("P_STORED_ALL")) == 2 )
      {
        sLocTitle = "Места хранения: "+RepOracleRunner.ExecuteScalar<string>(host.Connection,
        "Select name from supermag.SAStoreClass where ID="+
          ToString(Report.GetParameterValue("P_STORED_NAME")));
      }
      else
        sLocTitle = "Места хранения: все";         
      
      // Фильтр по местам хранения
      string sLocFrom = "";
      string sLocWhere = "";
      
      if ( ToInt32(Report.GetParameterValue("P_STORED_ALL")) == 1 )
      {  
        sLocWhere = " and l.id in ("+ToString(Report.GetParameterValue("P_STORED_NAME"))+")";
      }
      else if ( ToInt32(Report.GetParameterValue("P_STORED_ALL")) == 2 )
      {
        sLocFrom = "supermag.SAStoreClass sal,";
        sLocWhere = RepOracleRunner.ExecuteScalar<string>(host.Connection,
        "Select tree from supermag.SAStoreClass where ID="+
          ToString(Report.GetParameterValue("P_STORED_NAME")));
        sLocWhere = " and l.idclass = sal.id and sal.tree like '"+sLocWhere+"%'";
      }
      
      string sSQL = SqlFormat("SELECT"+
              " d.ID DocID"+
              ",d.Createdat"+
              ",crd.Article"+
              ",crd.Name"+
              ",s.Quantity"+
        " FROM "+sLocFrom+
              "supermag.SMStoreLocations l,"+
              "supermag.SMDocuments d,"+
              "supermag.SMSpec s,"+
              "supermag.SMCard crd"+
        " WHERE l.id=d.locationto"+
        sLocWhere+
        " and d.Createdat between to_date({0:S},'DD.MM.YYYY') and to_date({1:S},'DD.MM.YYYY')"+
        " and d.DocType=s.DocType"+
        " and d.ID=s.DocID"+
        " and crd.Article=s.Article"+
        " order by 1,3", 
        Report.GetParameterValue("P_FIRSTDATE"),
        Report.GetParameterValue("P_LASTDATE")
      );
      host.TableDataSourcePreInit("DocSpec", sSQL); 
Миниатюры
Нажмите на изображение для увеличения
Название: error1.png
Просмотров: 46
Размер:	9.7 Кб
ID:	10647   Нажмите на изображение для увеличения
Название: error 2.png
Просмотров: 50
Размер:	38.5 Кб
ID:	10648  
28.02.2020 10:48
Добавляю новый sql запрос, заменяю им стандартый и начинает ругаться.
28.02.2020 10:57
лучше бы приложить весь отчет, наверное... кто-то попробует... пока не очень понятно, что произошло и впечатление, что где-то просто кавычку забыли закрыть.
28.02.2020 10:58
Как отредактировать этот скрипт, согласно моим sql запросам?
28.02.2020 11:06
Вот подскажите пожалуйста куда дальше копать

https://storage.olegon.ru/supermag/u...urnover.frx.7z
(0,01Мб)
28.02.2020 11:35
таблицу переименовал в STORELOCATIONS
немного запрос поправил, только Name возвращает, добавил имя своего места хранения
у меня работает
Вложения
Тип файла: zip turnover.zip (2.8 Кб, 12 просмотров)
28.02.2020 12:04
Цитата:
jokerpnz таблицу переименовал в STORELOCATIONS
немного запрос поправил, только Name возвращает, добавил имя своего места хранения
у меня работает
И у меня тоже заработало, спасибо большое, буду дальше курить че здесь да как
28.02.2020 12:44
Хм... при выборе места хранения выбираю несколько позиций... но он мне показывает только первую позицию в списке, остальные игнорит, хотя должен показать в 4 к примеру. может в запросе что поменять нужно?
28.02.2020 12:50
Возможно ошибка не в SQL, а в настройках компонент в самом FastReport?
28.02.2020 13:02
ошибка у вас была в Cell42, там значение было SUPERMAG.SMSTORELOCATIONS.NAME
скорее всего две точки FastReport не понимает и не может найти Alias SUPERMAG.SMSTORELOCATIONS
я его переименовал в STORELOCATIONS, всё заработало

в Cell42 значение STORELOCATIONS.NAME
Часовой пояс GMT +3, время: 19:20.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.