// AdresType=3 olan ilk adresteki Paletler 50 şer satırlık Transfer emri ve Stok fişi ile Sıralı olarak ilgili depodaki AddressType=1 (Ağır Yük Rafı) tipindeki adreslere transfer edilir. BeginForm(ContainerTransfer) Warehouse.Get(9) // işlem depo Id si Dikkat ! SysUser'ın bu depoya yetkisi olmalı IF(@@Warehouse="") Set(@RuleErrorMessage,"9 Id li depo tanımı bulunamadı !") Goto(ExitForm) EndIf() Address.Get("AddressType=3") If(@@Address="") Set(@RuleErrorMessage,"@@Warehouse.Code Kodlu depo da geçerli tipte (AddressType=3) adres tanımı bulunamadı !") Goto(ExitForm) EndIf() Sql(" select * from GetContainerList(@@Warehouse.Id,@@Address.Id) ",@sqlContainerList) If(@sqlContainerList="" or @sqlContainerList.rowCount=0) Set(@RuleErrorMessage,"@@Warehouse.Code Kodlu depoya Satınalma siparişi bulunamadı !") Goto(ExitForm) EndIf() Sql(" select * from SysAddress where WarehouseId=@@Warehouse.Id and AddressType=1 Order by Address",@sqlAddressList) If(@sqlAddressList="" or @sqlAddressList.rowCount=0) Set(@RuleErrorMessage,"@@Warehouse.Code Kodlu depo da AddressType=1 (Ağır Yük Rafı) tipinde tanımlı adres bulunamadı !") Goto(ExitForm) EndIf() Set(@@Warehouse2,@@Warehouse) Set(@AddressLine,0) CustomSlipType.Get("SlipType=3 and ErpIntegration=0") IF(@@CustomSlipType="") Set(@RuleErrorMessage,"Transfer türünde (3) kullanıcı tanımlı fiş türü bulunamadı !") Goto(ExitForm) EndIf() WorkOrder.New({"SlipType":"3",},1) If(@Response.Status="-1") Set(@RuleErrorMessage,@Response.Message) Goto(ExitForm) EndIf() Set(@fisSatir,0) For(@i,1,@sqlContainerList.rowCount,1) ResetVariables({"name":["@@Item","@@ItemUnit","@@ItemTracking"]}) Set(@fisSatir,@fisSatir+1) IF(@fisSatir>50) //50 satırlık fişler oluşturulur Set(@fisSatir,1) Slip.Generate() If(@Response.Status="-1") Set(@RuleErrorMessage,@Response.Message) Goto(ExitForm) EndIf() WorkOrder.New({"SlipType":"3",},1) If(@Response.Status="-1") Set(@RuleErrorMessage,@Response.Message) Goto(ExitForm) EndIf() EndIf() ResetVariables({"name":["@@Container","@@Address2"]}) Set(@AddressLine,@AddressLine+1) IF(@AddressLine>@sqlAddressList.rowCount) Set(@AddressLine,1) EndIf() Address.Get(@sqlAddressList.rows.@AddressLine.Id,@@Address2) IF(@@Address2="") Set(@RuleErrorMessage,"Adres listesinden adres bilgisi set edilemedi !") Goto(ExitForm) EndIf() Container.Get(@sqlContainerList.rows.@i.ContainerId) IF(@@Container="") Set(@RuleErrorMessage,"@sqlContainerList.rows.@i.ContainerId Id li container okunamadı !") Goto(ExitForm) EndIf() WorkOrderLine.New({"SlipType":"3","Quantity":"@Quantity"},1) If(@Response.Status="-1") Set(@RuleErrorMessage,@Response.Message) Goto(ExitForm) EndIf() Next() Slip.Generate() If(@Response.Status="-1") Set(@RuleErrorMessage,@Response.Message) Goto(ExitForm) EndIf() Set(@RuleResponse.Status,"0") Goto(SuccsessExitForm) ExitForm: Set(@RuleResponse.Status,@Response.Status) Set(@RuleResponse.CustomMessage,"Hata oluştu : @RuleErrorMessage") Goto(ReturnForm) SuccsessExitForm: If(@RuleResponse.Status="0") Set(@RuleResponse.CustomMessage,"İşlem tamamlandı.") EndIf() ReturnForm: Set(@Response.Message,"") EndForm()