如何创建计算度量,过滤数据过期天数

时间:2012-06-12 00:24:47

标签: mdx

我的事实表中有一个字段称为过期日期。我想创建一个将执行以下操作的集合:如果到期日为0到29之间,则过期0到29天,如果在30到59天之间,那么'30 - 59天过期。我该如何创造这个?

1 个答案:

答案 0 :(得分:1)

我们需要知道你正在使用什么类型的数组,链接列表,或者我喜欢的这些东西,矢量等等。

如果您使用的是矢量,您可以创建自己的类作为数据类型,例如:

Class MyData
{
    String name;
    int daysPastDue; // how you want to factor this is up to you, 
                       // i suggest looking into Java.util.date or Java.util.calendar 
    public MyData
    {
         name = "";
         daysPastDue = 0;
    }
}

Class DoWork
{

public void myWork() // excuse the indent, forgot to put in the class name
{
    vector <MyData> input;
    MyData 0To29 [] = new MyData[input.size()];
    MyData 33To59 [] = new MyData[input.size()];
    MyData item = new MyData();
    int 0To29count = 0;
    int 30To59count = 0; 
    for (i = 0; i <= list.size(); i++)
    {
        item = input.elementAt(i)
        if (item.daysPastDue <= 29)
        {
            0To29[0To29Count] = input;
            0To29Count ++;
        }
        elseif (item.daysPastDue >= 30 && item.daysPastDue <= 59)
        {
            30To59[30To59Count] = input;
            30To59Count ++;
        }
    }
}
}

然后你有2个数组,可以根据需要输出它们。但是我建议从daysPastDue = 100000开始并递减它并通过向量检查数字,直到你列出了向量中的所有项目。这样他们就可以从最过去的时间到最低限度,并且你得到他们已经过去了多长时间的输出。