This commit is contained in:
PastSaid
2024-03-18 11:42:45 +08:00
parent 08d8878eef
commit c31957eb64
56 changed files with 1485 additions and 123 deletions

View File

@@ -0,0 +1,38 @@
<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>0bc2f871-b50d-41c3-9267-abde125d9b17</ProjectGuid>
<ProjectHome>.</ProjectHome>
<StartupFile>HW.PRD_LackAnalyeBill.Python.py</StartupFile>
<SearchPath>
</SearchPath>
<WorkingDirectory>.</WorkingDirectory>
<OutputPath>.</OutputPath>
<Name>HW.PRD_LackAnalyeBill.Python</Name>
<RootNamespace>HW.PRD_LackAnalyeBill.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>
<Compile Include="HW.PRD_LackAnalyeBill.Python.py" />
</ItemGroup>
<ItemGroup>
<Folder Include="sql\" />
</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>

View File

@@ -0,0 +1,54 @@
SELECT
t0.FID
,t0.FBILLNO
,t0e.FMATERIALID
,t0e.FMUSTQTY
,t0e.FPICKEDQTY
,t0e.FINVQTY
,t0e.FCANPICKEDQTY
,t0e.FLACKQTY
,t0e.FBOMID
,t0e.FSUMMARYID
--,t0e.*
FROM T_PRD_LACKANALYSEBILL t0
INNER JOIN T_PRD_LACKENTRY t0e on t0e.FID = t0.FID
--where t0.FID = 101203
SELECT
--t0.FID
--,t0.FBILLNO
--,t0e.FMATERIALID
--,t0e.FSELECTED
--,t0e.FQTY
t0e.*
FROM T_PRD_LACKANALYSEBILL t0
INNER JOIN T_PRD_LACKMOENTRY t0e on t0.FID = t0e.FID
SELECT t1.FNUMBER,t0e_a.FSUMMARYID,*
FROM T_PRD_PMPPBOMENTRY t0e
INNER JOIN T_PRD_PMPPBOMENTRY_A t0e_a on t0e.FENTRYID = t0e_a.FENTRYID
INNER JOIN T_BD_MATERIAL t1 on t1.FMATERIALID = t0e.FMATERIALIDSUB
where t0e.FID = 101203
--AND t1.FNUMBER = 'TSB074H000108O'
--MERGE INTO T_PRD_LACKENTRY U1 USING(
--SELECT S.FID,S.FSUMMARYID,S.FENTRYID,S1.FMOBILLNO
--FROM (
-- SELECT T1.FID,T2.FSUMMARYID,MIN(T1.FENTRYID) AS FENTRYID
-- FROM T_PRD_PMPPBOMENTRY T1
-- INNER JOIN T_PRD_PMPPBOMENTRY_A T2 ON T1.FENTRYID = T2.FENTRYID --and t1.fid = @lFId
-- GROUP BY T1.FID,T2.FSUMMARYID) S
-- INNER JOIN T_PRD_PMPPBOMENTRY S1 ON S.FENTRYID = S1.FENTRYID
-- INNER JOIN T_PRD_PMPPBOMENTRY_A S2 ON S.FENTRYID = S2.FENTRYID) U2 ON U1.FID = U2.FID AND U1.FSUMMARYID = U2.FSUMMARYID
--WHEN MATCHED
--THEN UPDATE SET U1.F_ISVCODE_MOBILLNO = U2.FMOBILLNO;
--SELECT S.FID,S.FSUMMARYID,S.FENTRYID,S1.FMOBILLNO
--FROM (
-- SELECT T1.FID,T2.FSUMMARYID,MIN(T1.FENTRYID) AS FENTRYID
-- FROM T_PRD_PMPPBOMENTRY T1
-- INNER JOIN T_PRD_PMPPBOMENTRY_A T2 ON T1.FENTRYID = T2.FENTRYID --and t1.fid = @lFId
-- GROUP BY T1.FID,T2.FSUMMARYID) S
-- INNER JOIN T_PRD_PMPPBOMENTRY S1 ON S.FENTRYID = S1.FENTRYID
-- INNER JOIN T_PRD_PMPPBOMENTRY_A S2 ON S.FENTRYID = S2.FENTRYID

View File

@@ -3190,7 +3190,7 @@ FROM (
ORDER BY FOrderNum,FSEQ1,FSEQ2,FSEQ3,FSEQ4,FSEQ5,FSEQ6
SELECT
t0.FMATERIALID AS 'ProMateralId'
t0.FMATERIALID AS 'ProMaterialId'
,t1e.FMATERIALID
,t1e_c.FSTOCKID
--,t1.FBILLNO
@@ -3210,12 +3210,13 @@ FROM #TEMPMO t0
GROUP BY
t0.FMATERIALID,t1e.FMATERIALID,t1e_c.FSTOCKID
SELECT t0.ProMateralId,t0.MONOS,t0.SALENOS,t0.MOIDS,t0.MOENTRYIDS
SELECT t0.ProMaterialId,t0.MONOS,t0.SALENOS,t0.MOIDS,t0.MOENTRYIDS
INTO #TEMPMONO2Pro
FROM #TEMPMOQTY t0
GROUP BY t0.ProMateralId,t0.MONOS,t0.SALENOS,t0.MOIDS,t0.MOENTRYIDS
GROUP BY t0.ProMaterialId,t0.MONOS,t0.SALENOS,t0.MOIDS,t0.MOENTRYIDS
SELECT 序号 AS 'FIDENTITYID'
,物料内码
,物料代码,物料名称,规格型号,旧编码
,上期结存,本期采购入库,本期耗用,期末结存
,销售出库数量,仓库拨出数量,仓库拨入数量,申购未转数
@@ -3224,13 +3225,15 @@ SELECT 序号 AS 'FIDENTITYID'
,t1.FBASENEEDQTY
,t1.FBASENOPICKEDQTY
,t1.FBASEPICKEDQTY
,CASE CHARINDEX(',',t2.MONOS) WHEN 0 THEN t2.MONOS ELSE '' END AS 'MONO'
,CASE CHARINDEX(',',t2.SALENOS) WHEN 0 THEN t2.SALENOS ELSE '' END AS 'SALENO'
,t2.SALENOS,t2.MOENTRYIDS,t2.MOIDS,t0.FProMaterialId
--,CASE CHARINDEX(',',t2.MONOS) WHEN 0 THEN t2.MONOS ELSE '' END AS 'MONO'
--,CASE CHARINDEX(',',t2.SALENOS) WHEN 0 THEN t2.SALENOS ELSE '' END AS 'SALENO'
,t2.SALENOS AS SALENO
,t2.MONOS AS MONO
,t2.SALENOS,t2.MOENTRYIDS,t2.MOIDS,t2.ProMaterialId
INTO {0}
FROM #Stock_Bom t0
LEFT JOIN #TEMPMONO2Pro t2 on t2.ProMateralId = t0.FProMaterialId
LEFT JOIN #TEMPMOQTY t1 ON t0.物料内码 = t1.FMATERIALID AND t0.仓库内码 = t1.FSTOCKID AND t0.FProMaterialId = t1.ProMateralId
LEFT JOIN #TEMPMONO2Pro t2 on t2.ProMaterialId = t0.FProMaterialId
LEFT JOIN #TEMPMOQTY t1 ON t0.物料内码 = t1.FMATERIALID AND t0.仓库内码 = t1.FSTOCKID AND t0.FProMaterialId = t1.ProMaterialId
DROP TABLE #TEMPMO
DROP TABLE #TEMPMOQTY

View File

@@ -27,12 +27,37 @@ def CellDbClick(e):
e.Cancel = True
fldKey = e.Header.FieldName;
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# if fldKey == "FBASENEEDQTY":
# reportModel = this.Model
# tab = reportModel.DataSource
# row = e.CellRowIndex - 1
# data = tab.Rows[row]
# moIds = "0";
# if data["MOIDS"] !=None and data["MOIDS"] != "":
# moIds = data["MOIDS"];
# filterStr = "FID IN ({0}) AND FMATERIALID = {1} ".format(moIds,data["ProMaterialId"])
# ShowListForm("PRD_MO", filterStr)
if fldKey == "FBASENEEDQTY":
reportModel = this.Model
tab = reportModel.DataSource
row = e.CellRowIndex - 1
data = tab.Rows[row]
filterStr = "FID IN ({0}) AND FMATERIALID = {1} ".format(data["MOIDS"],data["FProMaterialId"])
moIds = "0";
if data["MOIDS"] !=None and data["MOIDS"] != "":
moIds = data["MOIDS"];
filterStr = "t1.FMOID IN ({0}) AND t1.FMATERIALID = {1} ".format(moIds,data["<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"])
ShowListForm("PRD_PPBOM", filterStr)
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if fldKey == "FBASEPICKEDQTY":
reportModel = this.Model
tab = reportModel.DataSource
row = e.CellRowIndex - 1
data = tab.Rows[row]
moIds = "0";
if data["MOIDS"] !=None and data["MOIDS"] != "":
moIds = data["MOIDS"];
filterStr = "FID IN ({0}) AND FMATERIALID = {1} ".format(moIds,data["ProMaterialId"])
ShowListForm("PRD_MO", filterStr)
def ShowListForm(_fromId, _filter, _operationStatus = OperationStatus.VIEW ,_openStyleShowType = ShowType.Floating):