1
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
import clr
|
||||
clr.AddReference("System")
|
||||
clr.AddReference("Kingdee.BOS")
|
||||
clr.AddReference("Kingdee.BOS.Core")
|
||||
clr.AddReference("Kingdee.BOS.DataEntity")
|
||||
clr.AddReference("Kingdee.BOS.App")
|
||||
clr.AddReference("Kingdee.BOS.Contracts")
|
||||
clr.AddReference("Kingdee.BOS.ServiceHelper")
|
||||
|
||||
from Kingdee.BOS import*
|
||||
from Kingdee.BOS.Core import *
|
||||
from Kingdee.BOS.Core.Metadata.EntityElement import *
|
||||
from Kingdee.BOS.Orm.DataEntity import*
|
||||
from Kingdee.BOS.Orm.Metadata.DataEntity import*
|
||||
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
|
||||
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
|
||||
from Kingdee.BOS.Util import *
|
||||
from System import *
|
||||
from System.ComponentModel import*
|
||||
from System.Collections.Generic import*
|
||||
from System.Text import*
|
||||
from Kingdee.BOS.ServiceHelper import *
|
||||
|
||||
def DataChanged(e):
|
||||
if e.Field.Key == "FMaterialId":
|
||||
if DoCheckConditions():
|
||||
if e.NewValue != None and e.NewValue != 0:
|
||||
hasQRCost = this.View.Model.GetValue("FHasQRCost")
|
||||
idlist = [{ "materialId" : e.NewValue , "inRow" : e.Row}]
|
||||
GetcContractAnnualCost(idlist,hasQRCost)
|
||||
else:
|
||||
this.View.Model.SetValue("FTAXPRICE", 0, e.Row)
|
||||
this.View.Model.SetValue("FTAXRATE", 0, e.Row)
|
||||
this.View.InvokeFieldUpdateService("FTAXPRICE" ,e.Row)
|
||||
|
||||
if e.Field.Key == "FHasQRCost":
|
||||
if DoCheckConditions():
|
||||
hasQRCost = e.NewValue
|
||||
entity = this.View.BusinessInfo.GetEntity("FEntity")
|
||||
entrys = this.View.Model.GetEntityDataObject(entity)
|
||||
idlist = list(filter(lambda x:x["materialId"] > 0,map(lambda x:{ "materialId":x["MaterialId_Id"] ,"inRow": x["Seq"] - 1} ,entrys)))
|
||||
GetcContractAnnualCost(idlist,hasQRCost)
|
||||
|
||||
def GetcContractAnnualCost(idList,hasQRCost):
|
||||
# whereSql = " AND t0e.F_QNV_BASE1 IN ({0}) ".format(",".join(idList))
|
||||
intoSqlList = List[str]()
|
||||
if idList != None and idList.Count > 0:
|
||||
for idObj in idList:
|
||||
intoSqlList.Add("SELECT {0} AS 'MATERIALID' ,{1} inRow".format(str(idObj["materialId"]),str(idObj["inRow"])));
|
||||
|
||||
sql = """/*dialect*/
|
||||
SELECT *
|
||||
INTO #TMPMATERIALNUM
|
||||
FROM ({0}) tt
|
||||
|
||||
SELECT tt.inRow,ISNULL(t.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,ISNULL(t.<2E><>˰<EFBFBD><CBB0><EFBFBD><EFBFBD>,0) AS '<EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,ISNULL(t.<2E>ۺϵ<DBBA><CFB5><EFBFBD>,0) AS '<EFBFBD>ۺϵ<EFBFBD><EFBFBD><EFBFBD>'
|
||||
,ISNULL(t.Ĭ<><C4AC>˰<EFBFBD><CBB0>,0) AS 'Ĭ<EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD>'
|
||||
FROM #TMPMATERIALNUM tt
|
||||
LEFT JOIN (SELECT t0e.FID
|
||||
,t0e.FENTRYID
|
||||
,t0.FBILLNO
|
||||
,t0.F_QNV_TEXT2
|
||||
,t0e.F_QNV_BASE1 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0e.F_QNV_DECIMAL1 AS '<EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0e.F_QNV_DECIMAL3 AS '<EFBFBD>ۺϵ<EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0e.F_QNV_DATE2 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0e.F_QNV_DATE3 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧЧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t1.FTAXRATE AS 'Ĭ<EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD>'
|
||||
,ROW_NUMBER() OVER (PARTITION BY t0e.F_QNV_BASE1 ORDER BY t0e.F_QNV_DATE2 DESC) AS 'RN'
|
||||
FROM QNV_t_Cust_Entry100003 t0
|
||||
INNER JOIN QNV_t_Cust_Entry100004 t0e on t0.FID = t0e.FID
|
||||
INNER JOIN T_BD_TAXRATE t1 on t1.FID = t0e.F_QNV_BASE3
|
||||
WHERE 1=1
|
||||
AND t0.FDOCUMENTSTATUS ='C'
|
||||
AND GETDATE() BETWEEN t0e.F_QNV_DATE2 AND t0e.F_QNV_DATE3
|
||||
) t on t.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = tt.MATERIALID AND t.RN = 1
|
||||
WHERE 1 = 1
|
||||
|
||||
""".format(" union ".join(intoSqlList))
|
||||
|
||||
result = DBServiceHelper.ExecuteDynamicObject(this.Context, sql)
|
||||
|
||||
if result != None and result.Count > 0:
|
||||
priceKey = "<EFBFBD>ۺϵ<EFBFBD><EFBFBD><EFBFBD>" if hasQRCost else "<EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
||||
for row in result:
|
||||
rowIndex = row["inRow"]
|
||||
this.View.Model.SetValue("FTAXPRICE", row[priceKey], rowIndex)
|
||||
this.View.Model.SetValue("FTAXRATE", row["Ĭ<EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD>"], rowIndex)
|
||||
this.View.InvokeFieldUpdateService("FTAXPRICE" ,rowIndex)
|
||||
|
||||
def DoCheckConditions():
|
||||
orgObj = this.View.Model.GetValue("FApplicationOrgId")
|
||||
if orgObj["Id"] == 101542:
|
||||
return True
|
||||
return False
|
||||
40
02.珠海市供水有限公司/ZHSW.Python/ZHSW.Python.pyproj
Normal file
40
02.珠海市供水有限公司/ZHSW.Python/ZHSW.Python.pyproj
Normal file
@@ -0,0 +1,40 @@
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>0efb3769-37f2-4d7a-9eff-4c1cb749475c</ProjectGuid>
|
||||
<ProjectHome>
|
||||
</ProjectHome>
|
||||
<StartupFile>
|
||||
</StartupFile>
|
||||
<SearchPath>
|
||||
</SearchPath>
|
||||
<WorkingDirectory>.</WorkingDirectory>
|
||||
<OutputPath>.</OutputPath>
|
||||
<Name>ZHSW.Python</Name>
|
||||
<RootNamespace>ZHGS.Python</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="PUR_Requisition\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="PUR_Requisition\BillEventPlugInEx.py" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Python Tools\Microsoft.PythonTools.targets" />
|
||||
<!-- Uncomment the CoreCompile target to enable the Build command in
|
||||
Visual Studio and specify your pre- and post-build commands in
|
||||
the BeforeBuild and AfterBuild targets below. -->
|
||||
<!--<Target Name="CoreCompile" />-->
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
</Project>
|
||||
19
02.珠海市供水有限公司/ZHSW.Python/sql/获取合同年度单价.sql
Normal file
19
02.珠海市供水有限公司/ZHSW.Python/sql/获取合同年度单价.sql
Normal file
@@ -0,0 +1,19 @@
|
||||
SELECT t.*
|
||||
FROM (SELECT t0e.FID
|
||||
,t0e.FENTRYID
|
||||
,t0.FBILLNO
|
||||
,t0.F_QNV_TEXT2
|
||||
,t0e.F_QNV_BASE1 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0e.F_QNV_DECIMAL1 AS '<EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0e.F_QNV_DECIMAL3 AS '<EFBFBD>ۺϵ<EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0e.F_QNV_DATE2 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0e.F_QNV_DATE3 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧЧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t1.FTAXRATE AS 'Ĭ<EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD>'
|
||||
,ROW_NUMBER() over(PARTITION BY t0e.F_QNV_BASE1 ORDER BY t0e.F_QNV_DATE2 DESC) AS 'RN'
|
||||
FROM QNV_t_Cust_Entry100003 t0
|
||||
INNER JOIN QNV_t_Cust_Entry100004 t0e on t0.FID = t0e.FID
|
||||
INNER JOIN T_BD_TAXRATE t1 on t1.FID = t0e.F_QNV_BASE3
|
||||
WHERE 1=1
|
||||
AND t0.FDOCUMENTSTATUS ='C'
|
||||
AND GETDATE() BETWEEN t0e.F_QNV_DATE2 AND t0e.F_QNV_DATE3) t
|
||||
WHERE t.RN = 1
|
||||
Reference in New Issue
Block a user