1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
| Quintiq file version 2.0
| #parent: #root
| StaticMethod Upload (
| MacroPlan macroPlan,
| GeneralExcelImportAndExportDataTable table
| )
| {
| TextBody:
| [*
| // 清空原始数据
| macroPlan.SixDigitCode( relflush );
|
| // 校验文件名
| if ( table.GeneralExcelImportAndExportDataSource().Name() <> "发动机匹配-六位码.xlsx" ) {
| error( Translations::A_VWED_GeneralExcelImportAndExportDataSource_UploadError2() );
| }
|
| // 生成数据
| rowSize := table.GeneralExcelImportAndExportDataRow( relsize );
|
| for ( rowIndex := 0; rowIndex < rowSize; rowIndex++ ) {
| row := select( table, GeneralExcelImportAndExportDataRow, tempGEIAEDR, tempGEIAEDR.RowNr() = rowIndex );
|
| codeCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 0 );
| curveCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 1 );
| vehicleModelCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 2 );
| engineCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 4 );
| powerCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 5 );
| enginePartNumberCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 6 );
| remarksCell := select( row, GeneralExcelImportAndExportDataCell, tempGEIAEDC, tempGEIAEDC.GeneralExcelImportAndExportDataColumn().ColumnIndex() = 8 );
|
| macroPlan.SixDigitCode( relnew,
| Code := guard( codeCell.Value(), "" ),
| Curve := guard( curveCell.Value(), "" ),
| VehicleModel := guard( vehicleModelCell.Value(), "" ),
| ProducingArea := guard( select( macroPlan, SalesSegment_MP, tempSSMP, tempSSMP.Name() = guard( vehicleModelCell.Value(), "" ) ).Parent().Parent().Name(), "" ),
| Engine := guard( engineCell.Value(), "" ),
| Power := guard( powerCell.Value(), "" ),
| EnginePartNumber := guard( enginePartNumberCell.Value(), "" ),
| EngineFourDigitCode := guard( select( macroPlan, Product_MP, tempPMP, tempPMP.ID() = guard( enginePartNumberCell.Value(), "" ) ).Notes(), "" ),
| Remarks := guard( remarksCell.Value(), "" ) );
| }
|
| // 校验数据
| feedback := "";
| sanitycheckfeedback := "";
| flag := true;
|
| traverse ( macroPlan, SixDigitCode, sdc, flag ) {
| SixDigitCode::ValidateInput( feedback, sanitycheckfeedback, macroPlan, sdc.Code(), sdc.Curve(), sdc.VehicleModel(), sdc.ProducingArea(), sdc.Engine(), sdc.Power(), sdc.EnginePartNumber(),
| sdc.EngineFourDigitCode(), sdc.Remarks(), sdc );
| flag := feedback = "";
| }
|
| if ( not flag ) {
| error( feedback );
| }
| *]
| }
|
|