所以,不知道如何解释这个,但这里有。我想翻译一张佣金表。某些记录具有相同的发票和项目,这意味着多个人在该产品上获得了佣金。我想合并这些记录,所以每张发票每件产品只有一条记录。基本上,就像金字塔计划一样,销售人员根据他们所处的水平进行销售佣金,(1,2,3,4)所有销售人员也会获得佣金。所以我需要找到发票和物品相同的记录, 从每个记录中提取数据,然后只输出一条包含该数据的记录。
我非常确定脚本组件是要走的路,但我不知道如何拉入多行数据来检查重复的发票和项目,同时保持每行的一些数据一起输出。
如果您有任何问题,请告诉我,我知道我没有说出最好的问题。
源表看起来像这样
委员会表
SalespersonID - the person getting the commission
InvoiceID - ID of invoice
ItemID - ID of specific lineitem on invoice
ProductID - ID of product sold
Sales_Amt - total for that lineitem
Salesperson Downlevel ID - ID of salesperson below SalespersonID if exists
Commission Rate - percentage Salesperson receives
Commission Total - amt salesperson receives
还有其他一些列,但这些是重要的列。
我正在将其翻译成一个看起来像这样的表
新委员会表
CommissionId - Primary key for commission table
CommissionPayable - amt salesperson gets
CommissionPayableUpline1 - amt salespersonUpline1 gets
CommissionPayableUpline2 - amt salespersonUpline2 gets
CommissionPayableUpline3 - amt salespersonUpline3 gets
CommissionRate - percent salesperson gets of amount
CommissionRateUpline1 - percent salesperson upline1 gets
CommissionRateUpline2 - percent salesperson upline2 gets
CommissionRateUpline3 - percent salesperson upline3 gets
SalespersonId - Id of salesperson
SalespersonUpline1 - ID of salesperson upline1
SalespersonUpline2 - ID of salesperson upline2
salespersonUpline3 - ID of salesperson upline3
所以你看我们最多可以有四个级别的销售人员。我们的大多数销售人员只有1到2个级别,但我们确实有3个级别,目前没有四个级别。它存储在旧数据库中的方式令人困惑,效率也不高。
我希望找到包含重复发票和商品ID的行,抓住销售人员和下级销售人员以及每个销售人员的佣金率和金额,然后在新系统中将所有这些插入一行。
答案 0 :(得分:0)
好吧,我终于通过使用ssis脚本组件,然后做了一些奇特的排序并在输出上创建新记录来解决这个问题。