首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RapidClipseX,MicroStreamDB:如何将MicroStream表分配给RapidClipseX网格?

RapidClipseX,MicroStreamDB:如何将MicroStream表分配给RapidClipseX网格?
EN

Stack Overflow用户
提问于 2019-12-26 13:16:27
回答 3查看 161关注 0票数 1

我试着与RapidClipseX和MicroStreamDB合作。我生成了一个存储,在不同的表对象中导入了不同的数据。现在,我想阅读数据并将其可视化到RapidClipseX网格组件中。

通过使用MicroStreamDB,我没有像hibernate那样的DAO对象。我还是不知道该怎么做。在RapidClipseX文档中也没有可用的示例,在微流文档中也没有。

我试着使用下面的任务,它仍然填充网格。但是它在网格中填充了大约6000行,这仍然是表中的行数。但是每一行都有相同的内容,这仍然是数据库表中保存的最后一行。(我仍然由一个文本用户检查,如果MicrostreamDB存储了正确的数据。-是的)

代码语言:javascript
复制
private void grid_onAttach(final AttachEvent event)
{
    final dataRoot               root    = dbHandler.getRoot();
    this.grid.setDataProvider(DataProvider.ofCollection(root.getAllUmsClassifications()));
}

这是我使用的表的类:

代码语言:javascript
复制
package com.opaheinz.rcx_test.dbmodel;
import static javax.persistence.GenerationType.IDENTITY;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import com.rapidclipse.framework.server.resources.Caption;

/**
 * msTUmsatzClassification
 */
public class msTUmsatzClassification
{
    private Integer id;
    private Integer UId;
    private Integer pos;
    private Integer l2Id;
    private Integer l3Id;
    private Integer l1Id;
    private String  rule;
    private Date    datum;
    private double  sbetrag;
    private double  dbetrag;
    private Integer fixedCosts;


@Caption("Id")
@Id
@GeneratedValue(strategy = IDENTITY)

@Column(name = "id", unique = true, nullable = false, columnDefinition = "INTEGER")
public Integer getId()
{
    return this.id;
}

public void setId(final Integer id)
{
    this.id = id;
}

@Caption("UId")
@Column(name = "u_id", nullable = false, columnDefinition = "INTEGER")
public Integer getUId()
{
    return this.UId;
}

public void setUId(final Integer UId)
{
    this.UId = UId;
}

@Caption("Pos")
@Column(name = "pos", nullable = false, columnDefinition = "INTEGER")
public Integer getPos()
{
    return this.pos;
}

public void setPos(final Integer pos)
{
    this.pos = pos;
}

@Caption("L2Id")
@Column(name = "L2_id", columnDefinition = "INTEGER")
public Integer getL2Id()
{
    return this.l2Id;
}

public void setL2Id(final Integer l2Id)
{
    this.l2Id = l2Id;
}

@Caption("L3Id")
@Column(name = "L3_id", columnDefinition = "INTEGER")
public Integer getL3Id()
{
    return this.l3Id;
}

public void setL3Id(final Integer l3Id)
{
    this.l3Id = l3Id;
}

@Caption("L1Id")
@Column(name = "L1_id", nullable = false, columnDefinition = "INTEGER")
public Integer getL1Id()
{
    return this.l1Id;
}

public void setL1Id(final Integer l1Id)
{
    this.l1Id = l1Id;
}

@Caption("Rule")
@Column(name = "rule", nullable = false, columnDefinition = "VARCHAR", length = 100)
public String getRule()
{
    return this.rule;
}

public void setRule(final String rule)
{
    this.rule = rule;
}

@Caption("Datum")
@Temporal(TemporalType.DATE)
@Column(name = "datum", nullable = false, columnDefinition = "DATE", length = 10)
public Date getDatum()
{
    return this.datum;
}

public void setDatum(final Date datum)
{
    this.datum = datum;
}

@Caption("Sbetrag")
@Column(name = "sBetrag", nullable = false, columnDefinition = "DOUBLE", precision = 22, scale = 0)
public double getSbetrag()
{
    return this.sbetrag;
}

public void setSbetrag(final double sbetrag)
{
    this.sbetrag = sbetrag;
}

@Caption("Dbetrag")
@Column(name = "dBetrag", nullable = false, columnDefinition = "DOUBLE", precision = 22, scale = 0)
public double getDbetrag()
{
    return this.dbetrag;
}

public void setDbetrag(final double dbetrag)
{
    this.dbetrag = dbetrag;
}

@Caption("FixedCosts")
@Column(name = "fixedCosts", columnDefinition = "INTEGER")
public Integer getFixedCosts()
{
    return this.fixedCosts;
}

public void setFixedCosts(final Integer fixedCosts)
{
    this.fixedCosts = fixedCosts;
}
}

以下代码是我的dataRoot:

代码语言:javascript
复制
package com.opaheinz.rcx_test.dbstorage;
import java.util.ArrayList;
import java.util.List;
import com.opaheinz.rcx_test.dbmodel.msTCabinet;
import com.opaheinz.rcx_test.dbmodel.msTCabinetList;
import com.opaheinz.rcx_test.dbmodel.msTUmsatzClassification;
import com.opaheinz.rcx_test.dbmodel.msTgroup;
public class dataRoot
{

private msTCabinet              msTCabinet;
private msTCabinetList          msTCabinetList;
private msTgroup                msTgroup;
private msTUmsatzClassification msTUmsatzClassification;

private final List<msTCabinet>              cabinets              = new ArrayList<>();
private final List<msTCabinetList>          allCabinets           = new ArrayList<>();
private final List<msTgroup>                allGroups             = new ArrayList<>();
private final List<msTUmsatzClassification> allUmsClassifications = new ArrayList<>();

public msTCabinet getMsTCabinet()
{
    return this.msTCabinet;
}

public void setMsTCabinet(final msTCabinet msTCabinet)
{
    this.msTCabinet = msTCabinet;
}

public List<msTCabinet> getCabinets()
{
    return this.cabinets;
}

public msTCabinetList getMsTCabinetList()
{
    return this.msTCabinetList;
}

public void setMsTCabinetList(final msTCabinetList msTCabinetList)
{
    this.msTCabinetList = msTCabinetList;
}

public List<msTCabinetList> getAllCabinets()
{
    return this.allCabinets;
}

public msTgroup getMsTgroup()
{
    return this.msTgroup;
}

public void setMsTgroup(final msTgroup msTgroup)
{
    this.msTgroup = msTgroup;
}

public List<msTgroup> getAllGroups()
{
    return this.allGroups;
}

public msTUmsatzClassification getMsTUmsatzClassification()
{
    return this.msTUmsatzClassification;
}

public void setMsTUmsatzClassification(final msTUmsatzClassification msTUmsatzClassification)
{
    this.msTUmsatzClassification = msTUmsatzClassification;
}

public List<msTUmsatzClassification> getAllUmsClassifications()
{
    return this.allUmsClassifications;
}
}

出了什么问题,问题在哪里?如有任何帮助/想法,/samples将不胜感激。rgds OpaHeinz

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-02-01 17:22:48

现在,我找到了最后的解决方案:我必须使用以下代码进行评估:

代码语言:javascript
复制
    private void grid_onAttach(final AttachEvent event)
{

    final EmbeddedStorageManager storage = dbHandler.getStoragemanager();

    if(storage.root() == null)
    {
        System.out.println("No existing Database found ");
    }
    else
    {
        System.out.println("Existing Database found: ");
        final dataRoot root = (dataRoot)storage.root();
        this.grid.setDataProvider(DataProvider.ofCollection(root.getAllCabinets()));

    }

}
票数 0
EN

Stack Overflow用户

发布于 2020-01-01 18:11:08

我现在还没用呢。不幸的是,没有更新的文件。我不能将我们的应用程序迁移到X,因为X没有图表。

票数 0
EN

Stack Overflow用户

发布于 2020-01-08 17:12:11

我还有两个问题:

1)我在微流表中导入数据时犯了一个错误。

我用:

代码语言:javascript
复制
    private void btnImportTCabinet_onClick(final ClickEvent<Button> event)
{
    final dataRoot root = dbHandler.getRoot();
    final List<TCabinet> allRegister = new TCabinetDAO().findAll();
    final msTCabinet myMsTCcabinet = new msTCabinet();

    for(final TCabinet TCabinet : allRegister)
    {
        myMsTCcabinet.setId(TCabinet.getId());
        myMsTCcabinet.setDescription(TCabinet.getDescription());

        root.setMsTCabinet(myMsTCcabinet);
        root.getCabinets().add(myMsTCcabinet);

        dbHandler.getStoragemanager().store(myMsTCcabinet);
    }
}

出了个差错,我得走了

代码语言:javascript
复制
final msTCabinet myMsTCcabinet = new msTCabinet();

在for循环中,例如:

代码语言:javascript
复制
    private void btnImportTCabinet_onClick(final ClickEvent<Button> event)
{
    final dataRoot       root          = dbHandler.getRoot();
    final List<TCabinet> allRegister   = new TCabinetDAO().findAll();

    for(final TCabinet TCabinet : allRegister)
    {
        final msTCabinet     myMsTCcabinet = new msTCabinet();
        myMsTCcabinet.setId(TCabinet.getId());
        myMsTCcabinet.setDescription(TCabinet.getDescription());

        root.setMsTCabinet(myMsTCcabinet);
        root.getCabinets().add(myMsTCcabinet);

        dbHandler.getStoragemanager().store(myMsTCcabinet);
    }
}

然后

第二,通过使用以下代码,进入网格的输出仍然工作:

代码语言:javascript
复制
this.grid.setDataProvider(DataProvider.ofCollection(root.getAllCabinets()));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59489046

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档