zoukankan      html  css  js  c++  java
  • ReportMachine OCX

    http://rmachine.haotui.com/thread-55-1-1.html

    偏高偏低提示

    [IF( [RMDBDataSet1."abnormalIndicator"]='h','↑',IF( [RMDBDataSet1."abnormalIndicator"]='l','↓',''))]

    RMReport.ocx

    RMEngine.Init(1); // 初始化
    RMEngine.LoadFromFile('c:1.rmf'); // 读入报表模版
    RMEngine.AddDataSet(DataModule2.Customers, 'CustomersDS'); // 增加一个数据表
    RMEngine.DesignReport; // 设计报表
    RMReport.ShowReport; // 预览报表 

    c#调用

    this.dataSet1 = new System.Data.DataSet();
    this.dataView1 = new System.Data.DataView();
    this.rmReport1 = new RMReportEngine.RMReport();
    this.dataSet1.Reset();
    
                this.oleDbDataAdapter1.SelectCommand.CommandText = "select * from Customer";
                this.oleDbDataAdapter1.Fill(this.dataSet1, "Customer");
                this.dataView1.Table = this.dataSet1.Tables["Customer"];
                this.dataView1.RowFilter = "CustNo >= 3000";
                //this.dataGrid1.DataSource = this.dataView1;
    
                rmReport1.ModifyPrepared = false;
                rmReport1.Init(this, TxRMReportType.rmrtReport);
                //rmReport1.PreviewOptions.BtnDesignVisible = true;
                //rmReport1.AddDataSet(this.dataSet1.Tables["Customer"], "db1");
                rmReport1.AddDataSet(this.dataView1, "db1");
                rmReport1.LoadFromFile(MainPath + "reports\SimpleList.rmf"); //SimpleList.rmf
    
                rmReport1.AddVariable("公司名称", "我的公司名称", true);
                rmReport1.AddVariable("公司简称", "我的公司简称", true);
                rmReport1.AddVariable("公司电话", "我的公司电话", true);
    
                if (radioButton1.Checked)
                {
                        rmReport1.ShowReport();
                }
                else
                {
                    rmReport1.DesignReport();
                }

     

    public void AddDataSet(System.Data.DataView aDataView, string aDatasetName)

    public void AddDataSet(System.Data.DataTable aDataTable, string aDatasetName)

    public void AddDetailDataSet(System.Data.DataTable aDataTable, string aDatasetName, string aMasterName, System.Data.DataRelation aDataRelation)

    public void AddVariable(string aVarName, object aVarValue, bool aIsString)

    public void GetReportData(ref string aReportData)

    public void Init(System.Windows.Forms.Form aOwner, RMReportEngine.RMReportType aReportType)

    web版 RMViewer.ocx

    http://rmachine.haotui.com/thread-56-1-1.html

    编译client_ActiveForm目录中的项目就会生成RMViewer.ocx

    com版本

    COM控件(ocx)可以在VB、.Net、VC、Delphi等支持ADO的开发工具中使用

    ocx版本

    Dim conn
        Dim rs
        Dim sql
        Dim rq
        Dim Engine
    
        Set conn = OpenDBConnection
        Set rs = Server.CreateObject ("ADODB.recordset")
        sql = "SELECT * from customer"
        rs.Open sql, conn, 1, 1
    
        Set Engine = Server.CreateObject("RMEngine.Engine")
        Engine.Init
        Engine.AddDataSet "db1", rs
        Engine.SetReportFile RootPath & "SimpleList.rmf"
        Engine.ViewerVersion = ViewerVersion
        Engine.ViewerFileName = ViewerFileName
        Engine.SaveReportURL = "asp/DesignReportSave.asp?Report=" & "SimpleList.rmf" 
        Engine.AddVariable "NowTime", Now, false
    
        Engine.ShowProgress = True
    
        Set rs = nothing
        conn.Close
        Set conn = nothing

    报表机器,双屏切换到单屏看不见预览界面了,解决方法修改注册表

    计算机HKEY_USERSS-1-5-21-3613803311-2736177264-1221004870-500SoftwareWHF SoftWareReport MachineFormTRMPreviewForm

    XPosition 1606 改为0

    YPosition -173改为0

         if GetFieldValue('RMDBDataSet1."SFYYFSX"') then   //  是否用药方式行
         begin
              //ShowMessage(Memo12.Text);
              Memo12.HAlign:=rmhRight;
        end
         else
         begin
             Memo12.HAlign:=rmhLeft;
         end;

    procedure MasterData1_OnBeforePrint(Sender: TObject);
    begin
         if GetFieldValue('RMDBDataSet1."SFZZYZX"') then   //   是否重整医嘱行
         begin
              Line1.Visible:=true;   
         end      
         else     
         begin
              Line1.Visible:=false;  
         end;
    end;
    procedure Memo13_OnAfterCalc(Sender: TObject);
    begin
         if Pos('┐',Memo13.Text)<>0 then
          begin
              Memo13.Visible:=true;
              Shape2.Shape:=rmVertLine;
              Shape2.Visible:=true;
              Shape1.Visible:=false;
              Shape3.Visible:=false;
         end
         else if Pos('┘',Memo13.Text)<>0 then
          begin
              Memo13.Visible:=true;
              Shape3.Shape:=rmVertLine;
              Shape3.Visible:=true;
              Shape1.Visible:=false;
              Shape2.Visible:=false;

         end
         else  if Pos('│',Memo13.Text)<>0 then
         begin
              //Memo13.text:='';
              Memo13.Visible:=true;
              Shape1.Shape:=rmVertLine;
              Shape1.Visible:=true;
              Shape2.Visible:=false;
              Shape3.Visible:=false;

         end
         else
         begin
              Memo13.Visible:=true;
              Shape1.Visible:=false;
              Shape2.Visible:=false;
              Shape3.Visible:=false;
         end;
    end;

    procedure Memo12_OnAfterCalc(Sender: TObject);
    begin
         if GetFieldValue('RMDBDataSet1."SFYYFSX"') then   //  是否用药方式行
         begin
              //ShowMessage(Memo12.Text);
              Memo12.HAlign:=rmhRight;
        end
         else
         begin
             Memo12.HAlign:=rmhLeft;
         end;
    end;

  • 相关阅读:
    Jedis与Redisson选型对比
    使用rdbtools工具来解析redis rdb文件
    Generating equals/hashCode implementation but without a call to superclass
    解决 Order By 将字符串类型的数字 或 字符串中含数字 按数字排序问题
    File.delete()和Files.delete(Path path)的区别
    file.deleteOnExit()与file.delete()的区别
    java日期中YYYY与yyyy的区别
    IDEA git分支回退指定的历史版本
    Lucene介绍与使用
    Lombok 学习指南
  • 原文地址:https://www.cnblogs.com/cb168/p/4936662.html
Copyright © 2011-2022 走看看