Issues validating code with lightbox title customization
I'm getting some fairly odd validator errors http://validator.w3.org/check?uri=http%3A%2F%2Fwww.strikingsites.com%2F&charset=%28detect+ automatically%29&doctype=Inline&group=0&user-agent=W3C_Validator%2F1.1
Here is a snippet of one of the images that are causing the errors:
Example
<a href="images/home_work1FULL.jpg;" rel="lightbox[1]" title="Logo design, brand identity and web design for Transplete <a href="http://www.transplete.com" TARGET="_blank">Visit Site</a>" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('work1','','images/home_work1HOVER.jpg',1)"><img src="images/homeWORK1.jpg" alt="Striking Sites Web Design" name="work1" width="144" height="86" border="0" id="work1" /></a>
Basically I am trying to have rollover images linked open using lightbox javascript and have links in the caption. Note that I'm just building the site, so none of the links work, but it can be viewed at http://www.strikingsites.com.
Thanks all
sorry guys, here is the code that needs help:
Example
<a href="images/home_work1FULL.jpg;" rel="lightbox[1]" title="Logo design, brand identity and web design for Transplete <a href="http://www.transplete.com" TARGET="_blank">Visit Site</a>" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('work1','','images/home_work1HOVER.jpg',1)" ><img src="images/homeWORK1.jpg" alt="Striking Sites Web Design" name="work1" width="144" height="86" border="0" id="work1" /></a>
Similar Messages
-
When I try to open imessage on my Macbook Pro I get the message "Apple needs more information to complete your iMessage registration. Please call AppleCare in your country (listed below) and provide them with the following validation code:" Then it makes me call a number for AppleCare whish then makes me buy a $19 incident care.
I message has worked on this machine and works on my macbook air. What is happening?
CharlesHi,
Apple Care Level one responders are very Script Led.
This means they try to fit what you are saying into a Software or Hardware issue and into a Apple Care Period or not.
If you are having problems convincing them it is an Account/Apple ID problem (even though it only effects the Mac's use of it in iMessages) ask to speak to a Level 2 person who should be more knowledgeable because fixing and Id issue is free and not subject to Apple Care.
9:00 pm Monday; December 15, 2014
iMac 2.5Ghz i5 2011 (Mavericks 10.9)
G4/1GhzDual MDD (Leopard 10.5.8)
MacBookPro 2Gb (Snow Leopard 10.6.8)
Mac OS X (10.6.8),
Couple of iPhones and an iPad -
I tried to use iMessage on my MacBook Air but i get the following message
Apple needs more information to complete your iMessage registration. Please call AppleCare in your country (listed below) and provide them with the following validation code:
3384-1797-2190Hi,
Apple Care Level one responders are very Script Led.
This means they try to fit what you are saying into a Software or Hardware issue and into a Apple Care Period or not.
If you are having problems convincing them it is an Account/Apple ID problem (even though it only effects the Mac's use of it in iMessages) ask to speak to a Level 2 person who should be more knowledgeable because fixing and Id issue is free and not subject to Apple Care.
9:00 pm Monday; December 15, 2014
iMac 2.5Ghz i5 2011 (Mavericks 10.9)
G4/1GhzDual MDD (Leopard 10.5.8)
MacBookPro 2Gb (Snow Leopard 10.6.8)
Mac OS X (10.6.8),
Couple of iPhones and an iPad -
I have gone to this website almost everyday for years and I have not changed anything in my internet settings, but now I'm getting this message: secure connection failed: The Certifying Authority for this certificate is not permitted to issue a certificate with this name. (Error code: sec_error_cert_not_in_name_space) The only thing I KNOW I did differently, was I installed a CAC reader to my computer, since then, this has been happening. Is there a setting I can change?? E-mail is: [email protected] Thanks! Megan
There were recently several users getting this error code who use AVAST 2015. If you recently got that program, please see:
* [https://support.mozilla.org/questions/1029578 Can NOT access https://www.google.com for google voice, mail etc.]
* [https://support.mozilla.org/questions/1028985 Avast Forum connection failed - works in Chrome etc.]
* [https://support.mozilla.org/questions/1028190 Since last FF update I can't sign out of Yahoo and when I close FF it tells me it has crashed.] -
I have tried all I can to load iTunes cards into my iPad without success. Upon giving one of the cards to a friend he conveniently loaded. I keep getting the error message: "The code you entered is not recognized as a valid code". I just don't know what to do as I need to use these cards to make purchases off the I tunes store.
i tried with out using commmit but it is not creating Status.
When i see the function module help and they are trying to COMMIT
FU STATUS_OBJECT_CREATE
Short Text
Create Status Object
Functionality
The function module generates a status object.
Take the object number from the object number management (function modules OBJECT_NUMNBER_GET_xx).
If no object number is given, the module takes a temporary object number that must be replaced later (function module STATUS_OBJECT_SWITCH_NUMBER).
Example
Creating an internal order with number 100123 (object type "ORC") for status profile "STATSCHEM" with final object number
call function 'OBJECT_NUMBER_GET_OR'
exporting
aufnr = '100123'
importing objnr = objektnummer.
call function 'STATUS_OBJECT_CREATE'
exporting
objnr = objektnummer
obtyp = 'ORC'
stsma = 'STATSCHEM'.
commit work.
Creating the same order with a temporary object number
data: objectkey like ionra.
* TBO00-REFSTRUCT for object type 'OR' is 'IONRA'
objectkey-aufnr = '100123'.
call function 'STATUS_OBJECT_CREATE'
exporting
i_objectkey = objectkey
obtyp = 'ORC'
stsma = 'STATSCHEM'.
importing
objnr = objektnummer.
call function 'OBJECT_NUMBER_GET_OR'
exporting
aufnr = '100123'
importing objnr = objektnummer_neu.
call function 'STATUS_OBJECT_SWITCH_NUMBER'
exporting
objnr_old = objektnummer
objnr_new = objektnummer_neu.
commit work.
Notes -
How to create 2 transaction codes for same report program with diff title
Hi All -
I have created report program and create 2 transaction codes with different short description. I want to display the Tcodes decriptions instead of program attributes title.
Can anyone pls tell me how to do this?
Thanks,
KannanHi Kannan,
define 2 titlebars t1 and t2 for the report. In report initialization,
IF sy-tcode = 't1'
SET TITLE t1.
ELSE.
SET TITLE t2.
ENDIF.
Regards,
Clemens -
Insert valid sim with no pin code
i buyed iphone 4s ....i updated it to ios 5.0.1 now it starts from start screen and says insert valid sim with no pin code....what does this mean i inserted many sim cards but not working ....m stuck at activation screen n cant do anything...my baseband is 1.0.13 and having model 9A405
It is what I thought already. The problem is, that when you buy a second hand iPhone, you never know what someone did to it. A jailbroken iPhone you should never try to update, because then it won't work anymore. You can use it, but NEVER try to update. This was a painful lesson, I feel for you. In this forum you will not find any halp on this problem. You may try in some other forum perhaps.
-
Issues scanning QR codes with messenger
Anyone else having problems scanning QR codes with BB Messenger? I can scan the code and the phone makes the beep to confirm the code has been read, but then the link never appears.
Sorry, no answer for you, but if anyone is looking for a QR Code scanner, I recommend the following one from JaredCo. I've tried a couple different ones and this one seems to be the best, in my opinion.
http://appworld.blackberry.com/webstore/content/13962?lang=en
- If my response has helped you, please click "Options" beside my post and mark it as solved. Clicking the "thumbs up" icon near the bottom of my response would also be appreciated. -
Need sample code with RV_INVOICE_CREATE used
Hi everybody!
I need sample code with RV_INVOICE_CREATE or similar FMs used.
The thing is that I do not know how to populate parametres of this and other invoicing FMs....
For example, there are some tables to be passed to RV_INVOICE_CREATE
TABLES
XKOMFK = XKOMFK
XKOMV = XKOMV
XTHEAD = XTHEAD
XVBFS = XVBFS
XVBPA = XVBPA
XVBRK = XVBRK
XVBRP = XVBRP
XVBSS = XVBSS
How to populate them? I mean how to fill them with needed values?
Useful answers will be awarded.
Kind regards, M.RV_INVOICE_CREATE is the function module to create invoice based on delivery .
when you pass delivery number ,it will create invoice ,see the invoice number in vf02,vf03 transaction. and also see the data vbrk,vbrp tables
I have done this development and i have cancelled invoice,reverse goods issue,updated the delivery and again i am createing invoice..see the below progrm to get better understanding.
REPORT ZWM_OVERWEIGHT_FIX no standard page heading
message-id zwm.
======================================================================
Program Name : ZWM_OVERWEIGHT_FIX *
Description : Tool to fix Overweight in delivery line item, *
Used All Function module to cancel invoice , *
Reverse the goods issue ,Update Delivery qty,Create *
invoice *
Author : Seshu *
Date : 05/08/2007 *
MODIFICATION HISTORY *
DATE | AUTHOR | CHANGE # | DESCRIPTION OF MODIFICATION *
--|||--
05/08/07| Seshu | DEVK921979 | Initial *
D A T A - D E C L A R A T I O N *******************
Tables
Tables : vbak,
vbap,
vbfa,
likp,
lips,
vbrk,
vbrp.
Internal Tables
data : i_lips like lips occurs 0 with header line,
i_vbap like vbap occurs 0 with header line.
Variables
data : v_deliv like vbfa-vbelv,
v_invoic like vbfa-vbelv.
Data Declaration Part for Post Goods Issue
DATA: l_vbeln LIKE likp-vbeln,
l_vbkok LIKE vbkok,
i_prot LIKE prott OCCURS 0 WITH HEADER LINE,
ef_error_any_0 TYPE c,
ef_error_in_item_deletion_0 TYPE c,
ef_error_in_pod_update_0 TYPE c,
ef_error_in_interface_0 TYPE c,
ef_error_in_goods_issue_0 TYPE c,
ef_error_in_final_check_0 TYPE c,
d_return LIKE bapireturn1.
Internal tables for BAPI Function Module
data : i_cret like BAPIRETURN1 occurs 0 with header line,
i_csucess like BAPIVBRKSUCcESS occurs 0 with header line,
i_ret2 like bapiret2 ,
flag type c,
i_mesg like mesg occurs 0 with header line.
Data Declaration for Invoice Creation
DATA: VBSK_I LIKE VBSK.
data: d_success type c.
DATA: XKOMFK LIKE KOMFK OCCURS 0 WITH HEADER LINE,
XKOMV LIKE KOMV OCCURS 0 WITH HEADER LINE,
XTHEAD LIKE THEADVB OCCURS 0 WITH HEADER LINE,
XVBFS LIKE VBFS OCCURS 0 WITH HEADER LINE,
XVBPA LIKE VBPAVB OCCURS 0 WITH HEADER LINE,
XVBRK LIKE VBRKVB OCCURS 0 WITH HEADER LINE,
XVBRP LIKE VBRPVB OCCURS 0 WITH HEADER LINE,
XVBSS LIKE VBSS OCCURS 0 WITH HEADER LINE,
XKOMFKGN LIKE KOMFKGN OCCURS 0 WITH HEADER LINE.
S E L E C T I O N - S C R E E N ******************
Selection-screen
Selection-screen : begin of block blk with frame title text-001.
parameters : p_vbeln like vbak-vbeln obligatory.
selection-screen : end of block blk.
A T - S E L E C T I O N - S C R E E N ***************
Validation on Sales order
at selection-screen on p_vbeln.
Check the data on VBAK Table
select single vbeln from vbak into vbak-vbeln
where vbeln = p_vbeln.
if sy-subrc ne 0.
message e006 with p_vbeln.
endif.
S T A R T - O F - S E L E C T I O N *******************
Start-of-selection.
break sreddy.
Get the Invoice Number corresponding Sales Order Number
perform get_invoice.
Step 1.
Cancel the Invoice - Transaction VF11
perform cancel_invoice.
Reverse the goods issue
perform reverse_goodsissue.
Get the Order and Delivery Items
perform get_sales_deliv.
Delivery Change
perform Delivery_change.
Create Invoice document
perform invoice_create.
E N D - O F - S E L E C T I O N *******************
end-of-selection.
if flag = 'X'.
message i012 with p_vbeln.
endif.
*& Form get_invoice
Get Invoice Number
FORM get_invoice.
Clear Variables
clear : v_deliv,
v_invoic,
flag.
Get the Delivery Number First
select single vbeln from vbfa into v_deliv
where vbelv = p_vbeln
and vbtyp_n = 'J'.
if sy-subrc ne 0.
message i004 with p_vbeln.
stop.
endif.
Get the Invoice Number
select single vbeln from vbfa into v_invoic
where vbelv = p_vbeln
and vbtyp_n = 'M'.
if sy-subrc ne 0.
message i003 with p_vbeln.
stop.
endif.
ENDFORM. " get_invoice
*& Form cancel_invoice
Cancel the Invoice
FORM cancel_invoice.
clear : i_ret2,
i_cret,
i_csucess.
refresh : i_cret,
i_csucess.
CALL FUNCTION 'BAPI_BILLINGDOC_CANCEL1'
EXPORTING
BILLINGDOCUMENT = v_invoic
TESTRUN =
NO_COMMIT =
BILLINGDATE =
TABLES
RETURN = i_cret
SUCCESS = i_csucess
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = space
IMPORTING
RETURN = i_ret2.
read table i_cret with key type = 'E'.
if sy-subrc ne 0.
message i005 with v_invoic.
stop.
endif.
ENDFORM. " cancel_invoice
*& Form reverse_goodsissue
Reverse the goods Issue
FORM reverse_goodsissue.
Local Variable
data : lv_vbtyp like likp-vbtyp.
clear : i_mesg,
lv_vbtyp.
refresh : i_mesg.
select single vbtyp from likp into lv_vbtyp
where vbeln = v_deliv.
CALL FUNCTION 'WS_REVERSE_GOODS_ISSUE'
EXPORTING
I_VBELN = v_deliv
I_BUDAT = sy-datum
I_COUNT =
I_MBLNR =
I_TCODE =
I_VBTYP = lv_vbtyp
TABLES
T_MESG = i_mesg
EXCEPTIONS
ERROR_REVERSE_GOODS_ISSUE = 1
OTHERS = 2
if sy-subrc ne 0.
message i007 with v_deliv.
endif.
ENDFORM. " reverse_goodsissue
*& Form get_sales_deliv
Get the Sales order and Deliv Items
FORM get_sales_deliv.
Local Variables
data : lv_kwmeng like vbap-kwmeng.
clear : i_lips,
i_vbap.
refresh : i_lips,
i_vbap.
Select the data from LIPS
select * from lips into table i_lips
where vbeln = v_deliv.
if sy-subrc ne 0.
message i008 with v_deliv.
stop.
endif.
sort i_lips by vbeln posnr.
Get the Sales order Item Data.
select * from vbap into table i_vbap
where vbeln = p_vbeln.
if sy-subrc ne 0.
message i006 with p_vbeln.
stop.
endif.
sort i_vbap by vbeln posnr.
Compare delivery Item and Order Items
loop at i_lips.
clear lv_kwmeng.
read table i_vbap with key posnr = i_lips-posnr.
if sy-subrc eq 0.
lv_kwmeng = i_vbap-kwmeng * 2.
if lv_kwmeng >= i_lips-lfimg.
i_lips-lfimg = i_vbap-kwmeng.
modify i_lips.
endif.
endif.
endloop.
ENDFORM. " get_sales_deliv
*& Form Delivery_change
Delivery Update
FORM Delivery_change.
Clear : i_prot.
refresh : i_prot.
Delivery Update
CALL FUNCTION 'LE_MOB_DELIVERY_UPDATE'
EXPORTING
do_commit = 'X'
TABLES
t_delivery_items = i_lips
prot = i_prot
EXCEPTIONS
conversion_overflow = 1
essential_data_missing = 2
error = 3
nothing_to_update = 4
lock_after_update_failed = 5
error_in_delivery_update = 6
OTHERS = 7.
COMMIT WORK.
IF sy-subrc <> 0.
MESSAGE i009 with v_deliv.
endif.
Post Goods Issue
CLEAR: d_return,
i_prot,
l_vbeln,
l_vbkok.
REFRESH i_prot.
CLEAR: ef_error_in_item_deletion_0 ,
ef_error_in_pod_update_0 ,
ef_error_in_interface_0 ,
ef_error_in_goods_issue_0 ,
ef_error_in_final_check_0 .
carry out goods issue
l_vbeln = v_deliv.
l_vbkok-vbeln_vl = l_vbeln.
l_vbkok-wabuc = 'X'.
carry out goods issue
l_vbeln = v_deliv.
l_vbkok-vbeln_vl = l_vbeln.
l_vbkok-wabuc = 'X'.
SET UPDATE TASK LOCAL.
CALL FUNCTION 'WS_DELIVERY_UPDATE'
EXPORTING
vbkok_wa = l_vbkok
synchron = 'X'
no_messages_update = ' '
update_picking = 'X'
commit = 'X'
delivery = l_vbeln
nicht_sperren = 'X'
if_error_messages_send_0 = space
IMPORTING
ef_error_any_0 = ef_error_any_0
ef_error_in_item_deletion_0 = ef_error_in_item_deletion_0
ef_error_in_pod_update_0 = ef_error_in_pod_update_0
ef_error_in_interface_0 = ef_error_in_interface_0
ef_error_in_goods_issue_0 = ef_error_in_goods_issue_0
ef_error_in_final_check_0 = ef_error_in_final_check_0
TABLES
prot = i_prot
EXCEPTIONS
error_message = 1
OTHERS = 2.
if sy-subrc ne 0.
message i010 with v_deliv.
else.
COMMIT WORK .
endif.
ENDFORM. " Delivery_change
*& Form invoice_create
Invoice Creation
FORM invoice_create.
refresh: XKOMFK, XKOMV,
XTHEAD, XVBFS,
XVBPA, XVBRK,
XVBRP, XVBSS.
clear : XKOMFK, XKOMV,
XTHEAD, XVBFS,
XVBPA, XVBRK,
XVBRP, XVBSS,
VBSK_I.
VBSK_I-SMART = 'F'.
XKOMFK-VBELN = v_deliv.
XKOMFK-VBTYP = 'J'.
APPEND XKOMFK.
CALL FUNCTION 'RV_INVOICE_CREATE'
EXPORTING
VBSK_I = VBSK_I
WITH_POSTING = 'C'
TABLES
XKOMFK = XKOMFK
XKOMV = XKOMV
XTHEAD = XTHEAD
XVBFS = XVBFS
XVBPA = XVBPA
XVBRK = XVBRK
XVBRP = XVBRP
XVBSS = XVBSS.
if sy-subrc eq 0.
COMMIT WORK.
flag = 'X'.
else.
message i011 with p_vbeln.
endif.
ENDFORM. " invoice_create
Reward Points if it is helpful
Thanks
Seshu -
Sharepoint designer 2013 workflow kickoff issue from code
Problem Statement: Start a SharePoint 2013 designer Reusable Workflow with STS Authenticated User. We are trying to start to SharePoint 2013 designer Reusable Workflow with
STS authenticated user using code but when we do that, we get following error. RequestorId: a3ce6dc6-31ec-23f3-0000-000000000000. Details: RequestorId: a3ce6dc6-31ec-23f3-0000-000000000000. Details: An unhandled exception occurred during the
execution of the workflow instance. Exception details: System.ApplicationException: HTTP 401 {"error_description":"The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults
(either from ServiceBehaviorAttribute or from the <serviceDebug> configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework SDK documentation and inspect
the server trace logs."} {"x-ms-diagnostics":["3001000;reason=\"There has been an error authenticating the request.\";category=\"invalid_client\""],"SPRequestGuid":["a3ce6dc6-31ec-23f3-b3ab-aef56fc7e299"],"request-id":["a3ce6dc6-31ec-23f3-b3ab-aef56fc7e299"],"X-FRAME-OPTIONS":["SAMEORIGIN"],"SPRequestDuration":["65"],"SPIisLatency":["0"],"Server":["Microsoft-IIS\/8.0"],"WWW-Authenticate":["Bearer
realm=\"de9da885-f7bf-4564-a3a5-
Alternate approach we are following : We have created a windows authenticated user and gave him all the necessary permission to trigger the workflow(contribute, full control). Then we are creating the User token
for that user and opening the site with the help of the generated user token. By this approach workflow is getting triggered.
The problem in this approach is after ¾ days it gives error when trying to kick off workflow from code with user who has not logged in as we are using this AD user only for kickoff purpose.
InvalidOperationException:
Operation is not valid due to the current state of the object
MCTS Sharepoint 2010, MCAD dotnet, MCPDEA, SharePoint LeadThere is a userprofile for the user and the issue is not a userprofile. We are using direct AD import and we have full sync every 5 minutes. The workflow gets kicked off using a fix user who never logs in but after 4/5 days the token or something gets expired
and then we have to manually login with that user and then only code can kickoff workflow with that particular user.
The problem in this approach is after ¾ days it gives error when trying to kick off workflow from code with user who has not logged in as we are using this AD user only for kickoff purpose.
InvalidOperationException:
Operation is not valid due to the current state of the object
We can not kickoff with current user as current user can not be given contribute rights and we can not do it with system account as its not able to kickoff using system account by design of sp2013 workflow.
So we need to know how to kcikoff workflow with a user who never logs in or logs in only for the first time and then never in production.
Below code works for few days and then as user does not login with which we kick off workflow the token or something gets expired after 4/5 days.
userToken = oSPWeb.EnsureUser(“UserAccountName”).UserToken;
using (SPSite
oSPSite = new
SPSite(SPContext.Current.Web.Url,
userToken)) //Site collection URL
using (SPWeb
oSPWeb = oSPSite.OpenWeb()) //Subsite URL
SPList list = oSPWeb.Lists["Proposal"];
try
oSPWeb.AllowUnsafeUpdates =
true;
SPListItem item = list.GetItemById(proposalID);
var workflowServiceManager =
new
WorkflowServicesManager(oSPWeb);
var workflowSubscriptionService = workflowServiceManager.GetWorkflowSubscriptionService();
//get
all workflows associated with the list
var subscriptions = workflowSubscriptionService.EnumerateSubscriptionsByList(list.ID);
foreach (var
workflowSubscription in subscriptions)
if (workflowSubscription.Name ==
"Proposal Workflow")
//initiation parameters
var inputParameters =
new
Dictionary<string,
object>();
inputParameters.Add("Comments",
"TEST");
inputParameters.Add("ItemId", item.ID);
inputParameters.Add("WorkflowStart",
"StartWorkflow");
workflowServiceManager.GetWorkflowInstanceService().StartWorkflowOnListItem(workflowSubscription, item.ID, inputParameters);
break;
oSPWeb.AllowUnsafeUpdates =
false;
catch (Exception
ex)
Classes.Logger.WriteErrorLog("Sumbit",
"kickoffWorkflow1", ex,
MCTS Sharepoint 2010, MCAD dotnet, MCPDEA, SharePoint Lead -
Since upgrading to Yosemite on my iMac: My Mail app refuses to open, Safari won't load, and I can't upload pictures from my iPad...
Please help, any ideas very welcome. I've had my iMac since 2011, and have never had any issues to deal with before..
Thanks29/11/2014 20:17:01.315 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 11 seconds. Pushing respawn out by 49 seconds.
29/11/2014 20:17:37.013 com.apple.backupd[616]: Finished scan
29/11/2014 20:17:43.108 com.apple.backupd[616]: Saved event cache at
/Volumes/Time Machine Backups/Backups.backupdb/Geoff Lambrechts’s iMac
(2)/2014-11-29-200648.inProgress/9B453663-603F-40B8-AC21-24F05C724E15/.6162AD34- 38F8-30AB-98E0-4A22FB9D311F.eventdb
29/11/2014 20:17:43.207 com.apple.backupd[616]: Not using file event
preflight for Macintosh HD
29/11/2014 20:18:01.561 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 11 seconds. Pushing respawn out by 49 seconds.
29/11/2014 20:18:16.288 com.apple.xpc.launchd[1]:
(com.apple.quicklook[715]) Endpoint has been activated through legacy
launch(3) APIs. Please switch to XPC or bootstrap_check_in():
com.apple.quicklook
29/11/2014 20:18:23.705 com.apple.SecurityServer[56]: Session 100013 created
29/11/2014 20:18:32.046 mdworker[718]: code validation failed in the
process of getting signing information: Error Domain=NSOSStatusErrorDomain
Code=-67062 "The operation couldn’t be completed. (OSStatus error -67062.)"
29/11/2014 20:19:01.662 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 11 seconds. Pushing respawn out by 49 seconds.
29/11/2014 20:19:45.458 com.apple.xpc.launchd[1]:
(com.apple.imfoundation.IMRemoteURLConnectionAgent) The
_DirtyJetsamMemoryLimit key is not available on this platform.
29/11/2014 20:19:59.123 com.apple.xpc.launchd[1]:
(com.apple.PubSub.Agent[725]) Endpoint has been activated through legacy
launch(3) APIs. Please switch to XPC or bootstrap_check_in():
com.apple.pubsub.ipc
29/11/2014 20:19:59.123 com.apple.xpc.launchd[1]:
(com.apple.PubSub.Agent[725]) Endpoint has been activated through legacy
launch(3) APIs. Please switch to XPC or bootstrap_check_in():
com.apple.pubsub.notification
29/11/2014 20:20:01.138 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 10 seconds. Pushing respawn out by 50 seconds.
29/11/2014 20:21:01.484 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 10 seconds. Pushing respawn out by 50 seconds.
29/11/2014 20:21:13.430 com.apple.backupd[616]: Found 4529 files (1.1 GB)
needing backup
29/11/2014 20:21:18.786 com.apple.backupd[616]: 2.82 GB required (including
padding), 1.24 TB available
29/11/2014 20:21:31.775 Console[734]: Failed to connect (_consoleX) outlet
from (NSApplication) to (ConsoleX): missing setter or instance variable
29/11/2014 20:21:34.230 WindowServer[162]: disable_update_timeout: UI
updates were forcibly disabled by application "Console" for over 1.00
seconds. Server has re-enabled them.
29/11/2014 20:21:36.898 WindowServer[162]: common_reenable_update: UI
updates were finally reenabled by application "Console" after 3.67 seconds
(server forcibly re-enabled them after 1.00 seconds)
29/11/2014 20:21:36.971 coreservicesd[83]: SFLEntryBase::ListHasChanged
mach_msg returned 10000004d
29/11/2014 20:22:01.817 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 10 seconds. Pushing respawn out by 50 seconds.
29/11/2014 20:23:02.170 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 10 seconds. Pushing respawn out by 50 seconds.
29/11/2014 20:24:02.547 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 10 seconds. Pushing respawn out by 50 seconds.
29/11/2014 20:25:02.168 CalendarAgent[218]:
[Refusing to parse response
to PROPPATCH because of content-type: .]
29/11/2014 20:25:02.233 CalendarAgent[218]:
[Refusing to parse response
to PROPPATCH because of content-type: .]
29/11/2014 20:25:02.236 CalendarAgent[218]:
[Refusing to parse response
to PROPPATCH because of content-type: .]
29/11/2014 20:25:02.284 CalendarAgent[218]:
[Refusing to parse response
to PROPPATCH because of content-type: .]
29/11/2014 20:25:03.059 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 10 seconds. Pushing respawn out by 50 seconds.
29/11/2014 20:25:12.674 com.apple.xpc.launchd[1]:
(com.apple.imfoundation.IMRemoteURLConnectionAgent) The
_DirtyJetsamMemoryLimit key is not available on this platform.
29/11/2014 20:26:03.464 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 10 seconds. Pushing respawn out by 50 seconds.
29/11/2014 20:27:03.841 com.apple.xpc.launchd[1]: (jp.buffalo.NASPower)
Service only ran for 10 seconds. Pushing respawn out by 50 seconds.
On 29 November 2014 at 19:29, Apple Support Communities Updates < -
Validation Errors with new Install of W7 x64 Ent Debug Checker On New Equipment
I am receiving multiple Errors. I am trying to use the Windows 7 x64 Enterprise which happens to be the Debug Checker version OS as the host machine. I have only built the machine, and tried to load the Drivers.
I say this due to the starting issue that upon the loading of the entire driver set, (for the MB, Seagate Harddrive, and Vid Card), I would get the BSOD. I identified that the Bluetooth driver was the issue. I then did not load the Bluetooth
drivers for the MB on the 5<sup>th</sup> or so install of the 7 Ent os. (Tried Server 2k8 r2. Which is not compatible with the MB Drivers.)
I have not received a single Update either. The Auto update feature claims that I am up to date. I do not believe this due to the fact that any fresh Install of any OS has about several decades of updates and reboots to go through.
Upon trying the suggestions on the forum about turning off the IE Addons, the errors remain. Also the results of the sfc /scannow are copied below.
My Questions
I am seeking assistance on solving the Errors that have refused to leave me alone , to put it humorously and am asking for your insight and wisdom. Will you take a look??
Do I need to go to Win 7 Ent or Ult x64 that is not a Debug Checker version.
Are there other Microsoft download Registery file checkers besides the MGA Diag tool that are freeware that I can use to check, for corrupted registry files.
Or do I just need to take it to the stores (Fry’s and Microcenter) that recommended the equipment and have them just reload the software and allow them the headache of solving the error issue, by paying them to install the drivers and have ALL of the
drivers work. (including the blue tooth)
The Goal is to turn it into a Active Directory Server using Virtual Box with Server 2k8 R2 running in the virtual box environment.
Errors and Results.
There are also a number of logs that show various Crit, Error, and Warning logs. I will include those if need be.
This is the majority of the error messages, and I have missed the opportunity to capture others.
Internet explorer encountered Validation errors:
Validation Error
i.
Process Name: iexplorer.exe
ii.
Module Name : mshtml.dll
iii.
Assert offset: 0000000000B221DB
Validation Error
i.
Process Name: iexplorer.exe
ii.
Module Name : comctl32.dl
iii.
Assert offset: 00133A2A
Validation Error
i.
Process Name: iexplorer.exe
ii.
Module Name : mshtml.dll
iii.
Assert offset: 008BE823
Validation Error
i.
Process Name: iexplorer.exe
ii.
Module Name : mshtml.dll
iii.
Assert offset: 0040F9E8
Validation Error
i.
Process Name: iexplorer.exe
ii.
Module Name : iertutil.dll
iii.
Assert offset: 001DEC51
Validation Error
i.
Process Name: iexplorer.exe
ii.
Module Name : KERNELBASE.dll
iii.
Assert offset: 00014159
Validation Error
i.
Process Name: iexplorer.exe
ii.
Module Name : mshtml.dll
iii.
Assert offset: 0000000000B221DB
Microsoft Management Console Encountered a Validation Error
Validation Error
i.
Process Name: mmc.exe
ii.
Module Name : ieframe.dll
iii.
Assert offset: 00000000006C9283
Scripted Diagnostics Native Hot encountered a Validation Error
Validation Error
i.
Process Name: sdiagnhost.exe
ii.
Module Name : urlmon.dll
iii.
Assert offset: 00000000001A0A73
Validation Error
i.
Process Name: sdiagnhost.exe
ii.
Module Name : KERNELBASE.dll
iii.
Assert offset: 0000000000017f32
Windows System Assessment Tool encountered a validation error
Validation Error
i.
Process Name: winsat.exe
ii.
Module Name : KERNELBASE.dll
iii.
Assert offset: 0000000000017F32
Windows Explorer Encountered a validation Error
Validation Error
i.
Process Name: Explored.exe
ii.
Module Name : thumbcache.dll
iii.
Assert offset: 00000000000300BE
AI Suite 2 encountered a validation error
Validation Error
i.
Process Name: AI Suite 2.exe
ii.
Module Name : ntdll.dll
iii.
Assert offset: 000686BD
the number “2” is the substitutedfor the roman numeral 2
I believe that this is part of the MB Suite.
My the environment is a new equipment, and Downloaded student software. Windows 7 Enterprise SPK 1 Debug Checker, Valid Key with the software download. Activated on 8-12-2012
Motherboard: Asus p9x79 Deluxe, Part number: 90-mibh50-g0aay0kz
Chip Set: bx80619i73930k
2x Memory: cmx16gx3m2a1600c11 Corsair
Video Card: Diamond R7870 2GB DD OC 2xDVI/HDMI/2xDisplayport memory Clock 1250 MHz
Hard Drive: 9jb1n3-574 (leave the last two didgets off when searching in the browser) This is a Seagate 2TB
Generic optic drive: SH-222bb/bebe Samsung
Here is the Microsoft Fix It error code
Assertion Failed!
Program:…
File: d:\w7rtm\ds\security\cryptoapi\pki\...\newstor.cpp
Line: 2131
Expression: pStore->dwState = = STORE_STATE_OPEN || pStore->dwState = = STORE_STATE_OPENING || pStore->dwState = = STORE_STATE_DEFER_CLOSING || pStore->dwState = = STORE_STATE_NULL
For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts
(Press Retry to debug the application – JIT must be enabled)
Abort Retry Ignore
Abort
Closes the program
Retry
Repeats the error
Verbatim
Ignore
Closes the program
Nothing happens
Here is the Microsoft Genuine Advantage Diagnostic Report
Diagnostic Report (1.9.0027.0):
Windows Validation Data-->
Validation Code: 0
Cached Online Validation Code: N/A, hr = 0xc004f012
Windows Product Key: *****-*****-*****-*****-8C7YB
Windows Product Key Hash: cezvXJ2/mUhIEFxJfWkZ3IN8EQQ=
Windows Product ID: 55041-146-2397786-86942
Windows Product ID Type: 6
Windows License Type: Volume MAK
Windows OS version: 6.1.7601.2.00010100.1.0.004
ID: {EBD85729-DBBB-479F-AB15-EBC0DDE0CC28}(1)
Is Admin: Yes
TestCab: 0x0
LegitcheckControl ActiveX: N/A, hr = 0x80070002
Signed By: N/A, hr = 0x80070002
Product Name: Windows 7 Enterprise
Architecture: 0x00000009
Build lab: 7601.win7sp1_rtm.101119-1850
TTS Error:
Validation Diagnostic:
Resolution Status: N/A
Vista WgaER Data-->
ThreatID(s): N/A, hr = 0x80070002
Version: N/A, hr = 0x80070002
Windows XP Notifications Data-->
Cached Result: N/A, hr = 0x80070002
File Exists: No
Version: N/A, hr = 0x80070002
WgaTray.exe Signed By: N/A, hr = 0x80070002
WgaLogon.dll Signed By: N/A, hr = 0x80070002
OGA Notifications Data-->
Cached Result: N/A, hr = 0x80070002
Version: N/A, hr = 0x80070002
OGAExec.exe Signed By: N/A, hr = 0x80070002
OGAAddin.dll Signed By: N/A, hr = 0x80070002
OGA Data-->
Office Status: 109 N/A
OGA Version: N/A, 0x80070002
Signed By: N/A, hr = 0x80070002
Office Diagnostics: 025D1FF3-364-80041010_025D1FF3-229-80041010_025D1FF3-230-1_025D1FF3-517-80040154_025D1FF3-237-80040154_025D1FF3-238-2_025D1FF3-244-80070002_025D1FF3-258-3
Browser Data-->
Proxy settings: N/A
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Win32)
Default Browser: c:\Program Files (x86)\Internet Explorer\iexplore.exe
Download signed ActiveX controls: Prompt
Download unsigned ActiveX controls: Disabled
Run ActiveX controls and plug-ins: Allowed
Initialize and script ActiveX controls not marked as safe: Disabled
Allow scripting of Internet Explorer Webbrowser control: Disabled
Active scripting: Allowed
Script ActiveX controls marked as safe for scripting: Allowed
File Scan Data-->
File Mismatch: C:\Windows\system32\wat\watadminsvc.exe[Hr = 0x80070003]
File Mismatch: C:\Windows\system32\wat\npwatweb.dll[Hr = 0x80070003]
File Mismatch: C:\Windows\system32\wat\watux.exe[Hr = 0x80070003]
File Mismatch: C:\Windows\system32\wat\watweb.dll[Hr = 0x80070003]
Other data-->
Office Details: <GenuineResults><MachineData><UGUID>{EBD85729-DBBB-479F-AB15-EBC0DDE0CC28}</UGUID><Version>1.9.0027.0</Version><OS>6.1.7601.2.00010100.1.0.004</OS><Architecture>x64</Architecture><PKey>*****-*****-*****-*****-BBBBB</PKey><PID>55041-146-2397786-86942</PID><PIDType>6</PIDType><SID>S-1-5-21-4234423899-2489109333-1931045272</SID><SYSTEM><Manufacturer>System
manufacturer</Manufacturer><Model>System Product Name</Model></SYSTEM><BIOS><Manufacturer>American Megatrends Inc.</Manufacturer><Version>1103</Version><SMBIOSVersion major="2" minor="7"/><Date>20120409000000.000000+000</Date></BIOS><HWID>CFBA3607018400F2</HWID><UserLCID>0409</UserLCID><SystemLCID>0409</SystemLCID><TimeZone>Pacific
Standard Time(GMT-08:00)</TimeZone><iJoin>0</iJoin><SBID><stat>3</stat><msppid></msppid><name></name><model></model></SBID><OEM/><GANotification/></MachineData><Software><Office><Result>109</Result><Products/><Applications/></Office></Software></GenuineResults>
Spsys.log Content: 0x80070002
Licensing Data-->
Software licensing service version: 6.1.7601.17514
Name: Windows(R) 7, Enterprise edition
Description: Windows Operating System - Windows(R) 7, VOLUME_MAK channel
Activation ID: 9abf5984-9c16-46f2-ad1e-7fe15931a8dd
Application ID: 55c92734-d682-4d71-983e-d6ec3f16059f
Extended PID: 55041-00172-146-239778-03-1033-7601.0000-2252012
Installation ID: 000792957432055771547065313840421702569731971164600080
Processor Certificate URL: http://go.microsoft.com/fwlink/?LinkID=88338
Machine Certificate URL: http://go.microsoft.com/fwlink/?LinkID=88339
Use License URL: http://go.microsoft.com/fwlink/?LinkID=88341
Product Key Certificate URL: http://go.microsoft.com/fwlink/?LinkID=88340
Partial Product Key: 8C7YB
License Status: Licensed
Remaining Windows rearm count: 5
Trusted time: 8/12/2012 5:47:25 PM
Windows Activation Technologies-->
HrOffline: 0x00000000
HrOnline: N/A
HealthStatus: 0x0000000000000000
Event Time Stamp: N/A
ActiveX: Not Registered - 0x80040154
Admin Service: Not Registered - 0x80040154
HealthStatus Bitmask Output:
HWID Data-->
HWID Hash Current: OAAAAAEAAgABAAEAAgACAAAABAABAAEAHKJu3XDSdMRkx4ieoGkwung0ipvkrmTRDIsORc6qNCE=
OEM Activation 1.0 Data-->
N/A
OEM Activation 2.0 Data-->
BIOS valid for OA 2.0: yes, but no SLIC table
Windows marker version: N/A
OEMID and OEMTableID Consistent: N/A
BIOS Information:
ACPI Table Name OEMID Value OEMTableID Value
APIC ALASKA
A M I
FACP ALASKA
A M I
HPET ALASKA
A M I
MCFG ALASKA
OEMMCFG.
SSDT AMICPU
PROC
Scan Now Results
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Windows\system32>sfc /scannow
Beginning system scan. This process will take some time.
Beginning verification phase of system scan.
Verification 100% complete.
Windows Resource Protection did not find any integrity violations.
C:\Windows\system32>Thank you for your valuable time.
I have performed the Chkdsk and the memory Diagnostic tool as per the suggestions.
The Memory Tool did not find anything amiss.
As per another thread I am going to try flashing the bios as well with the updates.
Following are the Chkdsk results.
Are there any other suggestions?
Chkdsk Results
Checking file system on C:
The type of the file system is NTFS.
A disk check has been scheduled.
Windows will now check the disk.
CHKDSK is verifying files (stage 1 of 5)...
89600 file records processed.
File verification completed.
221 large file records processed.
0 bad file records processed.
1596 EA records processed.
44 reparse records processed.
CHKDSK is verifying indexes (stage 2 of 5)...
131874 index entries processed.
Index verification completed.
0 unindexed files scanned. 0
unindexed files recovered. CHKDSK
is verifying security descriptors (stage 3 of 5)...
89600 file SDs/SIDs processed.
Cleaning up 36 unused index entries from index $SII of file 0x9.
Cleaning up 36 unused index entries from index $SDH of file 0x9.
Cleaning up 36 unused security descriptors.
Security descriptor verification completed.
21138 data files processed.
CHKDSK is verifying Usn Journal...
36120296 USN bytes processed.
Usn Journal verification completed.
CHKDSK is verifying file data (stage 4 of 5)...
89584 files processed.
File data verification completed.
CHKDSK is verifying free space (stage 5 of 5)...
476262075 free clusters processed.
Free space verification is complete.
Windows has checked the file system and found no problems.
1953410047 KB total disk space.
48065140 KB in 61610 files.
43468 KB in 21139 indexes.
0 KB in bad sectors.
253139 KB in use by the system.
65536 KB occupied by the log file.
1905048300 KB available on disk.
4096 bytes in each allocation unit.
488352511 total allocation units on disk.
476262075 allocation units available on disk.
Internal Info:
00 5e 01 00 ef 42 01 00 ef 95 02 00 00 00 00 00 .^...B..........
e3 00 00 00 2c 00 00 00 00 00 00 00 00 00 00 00 ....,...........
6d 00 75 00 69 00 00 00 00 00 00 00 00 00 00 00 m.u.i...........
Windows has finished checking your disk.
Please wait while your computer restarts. -
Issues in Table with Multi-Row Insert
I have created a master detail screens using jheadstart on 2 separate pages, Master in the Form layout and detail in the Table Layout with multi-row insert, update and delete flags ON. Have set the New Rows count = 2.
Issue 1
If I try to delete any existing rows, it gives error for new rows saying value is required for the mandatory fields. It should just ignore the new rows if I have not updated any values for any attributes in the those row(As it does for non Master-Detail Table layout). I guess this might be happening because the jheadstart code is setting the foreign key for new rows the detail, but not resetting the status of the rows back to INITIALIZED.
I also noticed that the create() of underlying EO is getting called for those blank rows when I click on 'Save' button, even if I have not changed any data in those rows.
Issue 2
When I try to select the new rows also for deletion, I am getting a '500 Internal Server Error' with following stack trace... This is also happening for normal (non Master-Detail) Table layout.
java.lang.IllegalStateException: AdfFacesContext was already released or had never been attached. at oracle.adf.view.faces.context.AdfFacesContext.release(AdfFacesContext.java:342) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:253) at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87)
Issue 3
I have put some validation code in the validate() method in the MyEntityImpl.java class.
The validate method seems tobe getting called lots of times, in my case 20 times, where the new rows are just 2.
Environment:
Jdeveloper 10.1.3, JHeadStart 10.1.3 build 78, Windows XP
thanksThanks for the reply.
Issue 1:
What I have observed that in case of multi-row select enabled tables, the blank rows do not have any data. This is because the EO's create() method is called only when we post the data using 'Save' button. Thus the Foreign Keys are also not setup. This is a correct behavior since create() and FK setups etc should get done only if the user has inputted any value in the new rows and thus intend to insert new data into the table.
I am able to find the exact cause of this issue. It is happening because in the details table, I have a column which needs tobe shown as checkbox. Since we can only bind checkbox to an Boolean attribute in VO, I have created a transient attribute of type Boolean, which basically calls the getter/setter of actual attribute doing the String "Y"/"N" to true/false conversion. Here is code for the transient attribute getter/setter
public Boolean getDisplayOnWebBoolean() {
return "Y".equals(getDisplayOnWeb()) ? Boolean.TRUE : Boolean.FALSE;
public void setDisplayOnWebBoolean(Boolean value) {
if(Boolean.TRUE.equals(value))
setDisplayOnWeb("Y");
else
setDisplayOnWeb("N");
Now when I click on the "Save" button, the setter for the boolean field is getting called with the value = false and this is resulting into the row being maked as dirty and thus the validation for the required attributes is getting executed and failing.
Issue 2:
Confirmed that correct filter-mapping entries are present in the web.xml.
Now when I select the new blank rows for deletion and click save, following exception is thrown:
java.lang.ClassCastException: oracle.jheadstart.controller.jsf.bean.NewTableRowBean at oracle.jheadstart.controller.jsf.bean.JhsCollectionModel.getRowsToRemove(JhsCollectionModel.java:412) at oracle.jheadstart.controller.jsf.bean.JhsCollectionModel.doModelUpdate(JhsCollectionModel.java:604) at oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.processModelUpdaters(JhsPageLifecycle.java:541) at oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.validateModelUpdates(JhsPageLifecycle.java:571)
thanks - rutwik -
Hi
Can any body provide me the code for report with selection screen using ALV.
Thanks in advance
Prasanna KumarHi Prasanna,
Below is an example of ALV reporting.
*& Report ZVVF_MR028_STOCKLEDGER *
REPORT ZVVF_MR028_STOCKLEDGER .
* Tables
TABLES: EKKO, "PURCHASING DOC. HEADER
EKPO, "PURCHASING DOC. ITEM
MAKT, "MATERIAL DISCRIPTION
LFA1, "VENDOR MASTER
RSEG, "DOC. ITEM - INCOMING INVOICE
KONV, "CONDITION (TRANSECTION DATA - CLUSTER TABLE)
EKPA, "Partner Roles in Purchasing
MSEG,
t247,
mardh,
mara.
* Types Begin with TY_
TYPE-POOLS slis.
TYPES : BEGIN OF ty_head,
p_date TYPE dats,
matnr LIKE mseg-matnr,
maktx LIKE makt-maktx,
openbal LIKE mardh-labst,
r_po LIKE mseg-menge,
r_prodord LIKE mseg-menge,
r_byprod LIKE mseg-menge,
r_others LIKE mseg-menge,
R_TOTAL TYPE mseg-menge,
i_prod LIKE mseg-menge,
i_cust LIKE mseg-menge,
i_costcen LIKE mseg-menge,
i_scrapping LIKE mseg-menge,
i_subcontractor LIKE mseg-menge,
i_sampling LIKE mseg-menge,
purret LIKE mseg-menge,
i_total like mseg-menge,
stock_out LIKE mseg-menge,
stock_in LIKE mseg-menge,
stock_transit LIKE mseg-menge,
m_to_m_transit LIKE mseg-menge,
phy_loss LIKE mseg-menge,
phy_gain LIKE mseg-menge,
closing_bal LIKE mseg-menge,
current_bal LIKE mseg-menge,
bwart like mseg-bwart,
werks like mseg-werks,
END OF ty_head.
types : begin of ty_docs,
matnr like mseg-matnr, "Material
budat like mkpf-budat, "Posting date
menge like mseg-menge, "Qty
xblnr like mkpf-xblnr, "Ref doc
end of ty_docs.
data : w_cnt type I.
data : w_chk type i.
TYPES: BEGIN OF TY_KONV,
KNUMV LIKE KONV-KNUMV,
KBETR LIKE KONV-KBETR,
KSCHL LIKE KONV-KSCHL,
KWERT LIKE KONV-KAWRT,
END OF TY_KONV.
TYPES: BEGIN OF TY_KBETR,
* KBETR LIKE KONV-KBETR,
KWERT LIKE KONV-KWERT,
END OF TY_KBETR.
TYPES: BEGIN OF TY_RSEG,
EBELN LIKE RSEG-EBELN,
MATNR LIKE RSEG-MATNR,
WRBTR LIKE RSEG-WRBTR,
KSCHL LIKE RSEG-KSCHL,
LIFNR LIKE RSEG-LIFNR,
END OF TY_RSEG.
TYPES: BEGIN OF TY_NAME1,
NAME1 LIKE LFA1-NAME1,
END OF TY_NAME1.
** Each Condition and their values w.r.t different docu types
*data: begin of temp_head occurs 0,
* kschl like konv-kschl, " Condition type
* kwert like konv-kwert, " Condition value
* end of temp_head.
* Constants Begin with C_
CONSTANTS: st_formname_top_of_page TYPE slis_formname
VALUE 'TOP_OF_PAGE-ALV'.
* Data Begin with W_
*-------- Declarations for ALV Grid.
DATA: it_st_list_top_of_page TYPE slis_t_listheader,
it_st_fieldcat TYPE slis_t_fieldcat_alv,
it_st_events TYPE slis_t_event,
st_layout TYPE slis_layout_alv,
s_status TYPE slis_formname VALUE 'STANDARD_ST01',
s_user_command TYPE slis_formname VALUE 'USER_COMMAND-ALV',
s_repid LIKE sy-repid,
s_save(1) TYPE c,
s_variant LIKE disvariant,
code LIKE disvariant-handle.
data : begin of it_stockclose occurs 0,
werks like s031-werks, "Plant
matnr like mara-matnr, "Material
lgort like mard-lgort, "Storage Loc
labst like mardh-labst, "Unrestricted Stock
insme like mardh-insme, "Inspection Stock
speme like mardh-speme, "Safety stock
einme like mardh-einme, "Total stock of rest batches
retme like mardh-retme, "Blocked stock returns
end of it_stockclose.
data : begin of it_finalstock occurs 0,
werks like mseg-werks, "Plant
matnr like mseg-matnr, "Material code
lgort like mard-lgort, "Sto Loc
menge like mseg-menge, "Qty
* budat like mkpf-budat, "Posting Date
end of it_finalstock.
data : begin of it_docs occurs 0,
matnr like mseg-matnr, "Material code
budat like mkpf-budat, "Posting date
bwart like mseg-bwart, "Movement type
menge like mseg-menge, "Quantity
werks like mseg-werks, "Plant
shkzg like mseg-shkzg, "Credit/debit
lgort like mseg-lgort, "Sto Loc
maktx like makt-maktx, "Material Discription
end of it_docs.
data : begin of it_mkpf occurs 0,
budat like mkpf-budat, "Posting date
mblnr like mkpf-mblnr, "Material Doc
xblnr like mkpf-xblnr, "Delivery ref no
mjahr like mkpf-mjahr, "Fiscal yr
cpudt like mkpf-cpudt,
end of it_mkpf.
data : begin of it_mseg occurs 0,
matnr like mseg-matnr, "Material
bwart like mseg-bwart, "Movement type
menge like mseg-menge, "Qty
werks like mseg-werks, "Plant
mjahr like mseg-mjahr, "Fiscal yr
shkzg like mseg-shkzg, "Credit/Debit Indicator
lgort like mard-lgort, "Sto loc
budat like mkpf-budat, "Posting date
xblnr like mkpf-xblnr, "Delivery ref
cpudt like mkpf-cpudt,
end of it_mseg.
data : begin of it_matnr occurs 0,
matnr like mara-matnr, "Material
end of it_matnr.
data : w_monat type monat. "Month number
data : w_gjahr like sy-datum, "Date
w_date_fiscal(4) type n, "Year
w_date like sy-datum, "Date
w_buper like t009b-poper, "Posting period
w_year like t009b-bdatj, "Posting date
w_datum(2) type n. "Date
* Internal tables Begin with IT_
DATA : IT_HEAD TYPE STANDARD TABLE OF TY_HEAD WITH HEADER LINE.
***Issues and receipts
data : it_issue type ty_docs occurs 0 with header line,
it_receipt type ty_docs occurs 0 with header line,
it_issue_date type ty_docs occurs 0 with header line,
it_receipt_date type ty_docs occurs 0 with header line.
data: w_dval like mseg-menge,
w_opbal like mseg-menge.
** WORK AREAS: Begin with WA_
*DATA: wa_HEAD type TY_HEAD.
*data: w_tkwert type p decimals 2 value 0,
* grmenge like ekpo-menge,
* w_tot_kwert type p decimals 2 value 0,
* w_tmp_kwert type p decimals 2 value 0,
* w_finalsum type p decimals 2 value 0, "#EC *
* w_finalrate type p decimals 4 value 0. "#EC *
* R A N G E S
ranges: r_loekz for ekko-loekz. " Deletion Indicator
ranges : r_movtype for mseg-bwart, "Movement type
r_date for sy-datum. "Date
* Select Options Begin with SO_
SELECTION-SCREEN BEGIN OF BLOCK MAIN WITH FRAME TITLE TEXT-001.
SELECTION-SCREEN SKIP 2.
*SELECT-OPTIONS : SO_LIFNR FOR EKKO-LIFNR.
*SELECT-OPTIONS : SO_EKORG FOR EKKO-EKORG .
*SELECT-OPTIONS : SO_WERKS FOR MSEG-WERKS .
*SELECT-OPTIONS : SO_EBELN FOR EKKO-EBELN.
*SELECT-OPTIONS : SO_DATE for sy-datum obligatory no-extension.
*SELECT-OPTIONS : SO_EKGRP FOR EKKO-EKGRP.
*SELECT-OPTIONS : SO_BSART FOR EKKO-BSART DEFAULT 'NB'.
*SELECT-OPTIONS : SO_MATKL FOR EKPO-MATKL.
*SELECT-OPTIONS : SO_MATNR FOR MSEG-MATNR.
select-options : so_werks for mseg-werks default 'P001'. "Plant
select-options : so_lgort for mseg-lgort. " Sto. Location
select-options : so_matnr for mseg-matnr obligatory. "Material code
select-options : so_mtart for mara-mtart. "Material type
SELECT-OPTIONS : SO_MATKL FOR EKPO-MATKL. "Material Group
select-options : so_date for sy-datum obligatory no-extension.
SELECTION-SCREEN SKIP 2.
selection-screen: skip,
begin of line,
comment (15) text-034.
parameters: p_all radiobutton group del.
selection-screen comment 25(9) for field p_all.
parameters: p_del radiobutton group del.
selection-screen comment 45(12) for field p_del.
parameters: p_undel radiobutton group del default 'X'.
selection-screen comment 65(14) for field p_undel.
selection-screen end of line.
SELECTION-SCREEN SKIP 2.
SELECTION-SCREEN END OF BLOCK MAIN.
* Parameters Begin with PR_
* Initialisation
INITIALIZATION.
s_repid = sy-repid.
s_save = 'A'.
perform f000_initialize_mov_type changing r_movtype[].
PERFORM eventtab_build USING it_st_events[].
PERFORM variant_init.
* S T A R T O F S E L E C T I O N
START-OF-SELECTION.
PERFORM initialize.
perform f001_determine_fiscal_period.
perform f002_determine_closing_stock changing it_stockclose[].
if not so_date-low+6(2) eq '01'.
perform f003_change_closing_stock changing it_stockclose[].
endif.
perform f004_determine_mat_docs changing it_mkpf[]
it_mseg[].
perform f005_receipts_issues using it_mseg[]
changing it_issue[]
it_receipt[]
it_matnr[].
*---alv
PERFORM comment_build USING it_st_list_top_of_page[].
PERFORM fieldcat USING it_st_fieldcat[].
PERFORM layout_build USING st_layout.
PERFORM reuse_alv_list_display.
END-OF-SELECTION.
form initialize.
clear: r_loekz.
refresh: r_loekz.
*--- Deleted PO's only
if p_del = 'X'.
r_loekz-sign = 'I'.
r_loekz-option = 'EQ'.
r_loekz-low = 'L'.
append r_loekz.
endif.
*--- UnDeleted PO's only
if p_undel = 'X'.
r_loekz-sign = 'E'.
r_loekz-option = 'EQ'.
r_loekz-low = ' '.
append r_loekz.
endif.
endform. "initialize
*& Form f000_initialize_mov_type
* Desc : Initialization of movement types
form f000_initialize_mov_type changing p_r_movtype like r_movtype[].
data : lwa_movtype like line of p_r_movtype.
lwa_movtype-sign = 'I'.
lwa_movtype-option = 'EQ'.
lwa_movtype-low = '101'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '102'.
append lwa_movtype to p_r_movtype.
* Additional changes done for other movement types--> by deepak
lwa_movtype-low = '103'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '104'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '105'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '106'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '122'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '123'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '161'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '162'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '201'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '202'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '261'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '262'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '301'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '302'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '303'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '304'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '305'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '306'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '309'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '310'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '331'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '332'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '333'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '334'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '335'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '336'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '511'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '512'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '531'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '532'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '541'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '542'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '561'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '562'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '601'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '602'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '641'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '642'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '643'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '644'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '701'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '702'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '909'.
append lwa_movtype to p_r_movtype.
lwa_movtype-low = '910'.
append lwa_movtype to p_r_movtype.
endform. " f000_initialize_mov_type
*& Form f001_determine_fiscal_period
* Desc Determination of fiscal period
form f001_determine_fiscal_period .
clear : w_monat,
w_gjahr,
w_date,
w_buper,
w_year.
w_monat = so_date-low+4(2).
if w_monat = '01'.
w_monat = '12'.
w_gjahr = so_date-low+0(4).
w_date_fiscal = w_gjahr+0(4) - 1.
w_gjahr = w_date_fiscal.
else.
w_monat = w_monat - 1.
w_gjahr = so_date-low+0(4).
endif.
concatenate w_gjahr w_monat '01' into w_gjahr.
*****Determines Fiscal yr and period
call function 'DATE_TO_PERIOD_CONVERT'
EXPORTING
i_date = w_gjahr
i_periv = 'V3'
IMPORTING
e_buper = w_buper
e_gjahr = w_year.
if sy-subrc <> 0.
endif.
w_datum = w_buper+1(2).
**Month text
select single ltx from t247 into t247-ltx
where spras = 'E'
and mnr = so_date-low+4(2).
endform. " f001_determine_fiscal_period
*& Form f001_determine_closing_stock
* Desc : Determination of closing stock
form f002_determine_closing_stock
changing p_it_stockclose like it_stockclose[].
data : lw_recs type i,
w_dval like mseg-menge,
w_opbal like mseg-menge.
data : begin of lit_stockclose occurs 0,
lfgja like mardh-lfgja, "Fiscal yr
lfmon like mardh-lfmon, "Period
werks like s031-werks, "Plant
matnr like mara-matnr, "Material
lgort like mseg-lgort, "Storage Loc
labst like mardh-labst, "Unrestricted Stock
end of lit_stockclose.
data : begin of lit_mard occurs 0,
matnr like mara-matnr,
werks like mseg-werks,
lgort like mseg-lgort,
end of lit_mard.
data : lwa_stockclose like line of p_it_stockclose.
select matnr werks lgort from mard
into corresponding fields of table lit_mard
where matnr in so_matnr
and werks in so_werks.
refresh it_stockclose.
clear it_stockclose.
*****Fetch Closing stock
*If the entry is found in MARD then consider the same
*else fetch the closing stock from MARDH.
loop at lit_mard.
refresh lit_stockclose.
clear lit_stockclose.
select werks matnr lgort labst
insme speme einme retme
lfgja lfmon
into corresponding fields of
table lit_stockclose
from mard
where lfmon = w_datum
and lfgja = w_year
and werks = lit_mard-werks
and matnr = lit_mard-matnr
and lgort = lit_mard-lgort.
clear lw_recs.
describe table lit_stockclose lines lw_recs.
*If no entry in MARD fetch from MARDH.
if lw_recs = 0.
select werks matnr lgort labst
insme speme einme retme
lfgja lfmon
into corresponding fields of
table lit_stockclose
from mardh
where lfmon = w_datum
and lfgja = w_year
and werks = lit_mard-werks
and matnr = lit_mard-matnr
and lgort = lit_mard-lgort.
endif.
sort lit_stockclose by lfgja lfmon descending.
read table lit_stockclose index 1.
if sy-subrc eq 0.
move-corresponding lit_stockclose to lwa_stockclose.
append lwa_stockclose to p_it_stockclose.
clear lwa_stockclose.
endif.
endloop.
endform. " f001_determine_closing_stock
*& Form f003_change_closing_stock
* Desc : Selection of the mat docs for the intermediate
* days if the selection begin date is not from
* first date of the corresponding month.
form f003_change_closing_stock changing
p_it_stockclose like it_stockclose[].
data : lwa_stockclose like line of p_it_stockclose[].
refresh : r_date,
it_docs,
it_finalstock.
clear : r_date,
lwa_stockclose.
r_date-sign = 'I'.
r_date-option = 'BT'.
concatenate so_date-low+0(4)
so_date-low+4(2)
'01'
into r_date-low.
r_date-high = so_date-low - 1.
append r_date.
clear r_date.
read table r_loekz index 1.
select mkpf~budat
mseg~matnr
mseg~bwart
mseg~menge
mseg~werks
mseg~shkzg
mseg~lgort
makt~maktx
into corresponding
fields of
table it_docs
from mkpf as mkpf inner join mseg as mseg
on mkpf~mandt = mseg~mandt and
mkpf~mblnr = mseg~mblnr and
mkpf~mjahr = mseg~mjahr
inner join makt as makt
on mseg~matnr = makt~matnr
where
mseg~werks IN SO_WERKS and
mseg~matnr in so_matnr and
mkpf~budat in r_date and
mseg~bwart in r_movtype.
Clear it_docs.
loop at it_docs.
if it_docs-shkzg = 'H'.
it_docs-menge = - ( it_docs-menge ).
modify it_docs.
endif.
move-corresponding it_docs to it_finalstock.
collect it_finalstock.
clear it_finalstock.
move it_docs-maktx to it_head-maktx.
endloop.
loop at p_it_stockclose into lwa_stockclose.
read table it_finalstock with key
matnr = lwa_stockclose-matnr
werks = lwa_stockclose-werks
lgort = lwa_stockclose-lgort.
if sy-subrc eq 0.
lwa_stockclose-labst = lwa_stockclose-labst +
it_finalstock-menge.
modify p_it_stockclose from lwa_stockclose.
read table p_it_stockclose into lwa_stockclose index 1.
"with key matnr = wa_head-matnr.
"budat = wa_head-p_date.
if sy-subrc = 0.
w_dval = lwa_stockclose-labst.
ENDIF.
clear lwa_stockclose.
endif.
endloop.
endform. " f003_change_closing_stock
*& Form f004_determine_mat_docs
* DEsc : Determination of Receipts and Issues
form f004_determine_mat_docs changing p_it_mkpf like it_mkpf[]
p_it_mseg like it_mseg[].
data : lwa_mkpf like line of p_it_mkpf[],
lwa_mseg like line of p_it_mseg[],
ls_quantity type mseg-menge,
sum_issue type mseg-menge,
sum_receipt type mseg-menge,
sum_531 type mseg-menge,
sum_541 type mseg-menge,
sum_101 type mseg-menge,
sum_511 type mseg-menge,
sum_261 type mseg-menge,
sum_601 type mseg-menge,
sum_201 type mseg-menge,
sum_641 type mseg-menge,
sum_po type mseg-menge,
sum_551 type mseg-menge,
sum_331 type mseg-menge,
sum_161 type mseg-menge,
sum_305 type mseg-menge,
sum_309 type mseg-menge,
sum_701 type mseg-menge,
sum_702 type mseg-menge.
***Determination of Mat Docs
select mblnr xblnr budat mjahr cpudt from mkpf
into corresponding fields
of table it_mkpf
where budat in so_date.
***Determination of Receipts and issues
* loop at p_it_mkpf into lwa_mkpf.
* select mblnr matnr bwart menge werks mjahr shkzg lgort
* from mseg into corresponding
* fields of lwa_mseg
* where mblnr = lwa_mkpf-mblnr
* and mjahr = lwa_mkpf-mjahr
* and werks in so_werks
* and matnr in so_matnr
* and bwart in r_movtype.
* if lwa_mseg-shkzg = 'H'.
* lwa_mseg-menge = - ( lwa_mseg-menge ).
* endif.
* move : lwa_mkpf-budat to lwa_mseg-budat,
* lwa_mkpf-xblnr to lwa_mseg-xblnr,
* lwa_mkpf-cpudt to lwa_mseg-cpudt.
* append lwa_mseg to p_it_mseg.
* move lwa_mseg-matnr to it_head-matnr.
* move lwa_mseg-budat to it_head-p_date.
* move lwa_mseg-bwart to it_head-bwart.
* append it_head.
* clear it_head.
* clear lwa_mseg.
* endselect.
* endloop.
sort it_mkpf by budat cpudt .
loop at it_mkpf.
at new budat.
if w_opbal = SPACE.
it_head-openbal = w_dval.
w_chk = 1.
else.
it_head-openbal = w_opbal.
w_chk = 2.
endif.
endat.
if w_chk = 1.
it_head-openbal = w_dval.
elseif w_chk = 2.
it_head-openbal = w_opbal.
endif.
select Single *
from mseg
where mblnr = it_mkpf-mblnr
and mjahr = it_mkpf-mjahr
and werks in so_werks
and matnr in so_matnr
and bwart in r_movtype.
if mseg-matnr ne SPACE.
move mseg-mblnr to it_mseg-xblnr.
move mseg-matnr to it_mseg-matnr.
move mseg-bwart to IT_mseg-bwart.
move mseg-menge to it_mseg-menge.
move mseg-werks to it_mseg-werks.
move mseg-mjahr to it_mseg-mjahr.
move mseg-shkzg to it_mseg-shkzg.
move mseg-lgort to it_mseg-lgort.
if it_mseg-shkzg = 'H'.
it_mseg-menge = - ( lwa_mseg-menge ).
endif.
move : it_mkpf-budat to it_mseg-budat,
it_mkpf-xblnr to it_mseg-xblnr,
it_mkpf-cpudt to it_mseg-cpudt.
* append lwa_mseg to p_it_mseg.
append it_mseg.
* it_head-R_PO = it_head-r_po + ls_quantity.
if ( it_mseg-bwart eq '101'
or it_mseg-bwart eq '102'
or it_mseg-bwart eq '103'
or it_mseg-bwart eq '104'
or it_mseg-bwart eq '105'
or it_mseg-bwart eq '106'
or it_mseg-bwart eq '161'
or it_mseg-bwart eq '162'
or it_mseg-bwart eq '122'
or it_mseg-bwart eq '123'
or it_mseg-bwart eq '511'
or it_mseg-bwart eq '512'
or it_mseg-bwart eq '531'
or it_mseg-bwart eq '532'
or it_mseg-bwart eq '561'
or it_mseg-bwart eq '562'
or it_mseg-bwart eq '305'
or it_mseg-bwart eq '306'
or it_mseg-bwart eq '702') and it_mseg-shkzg = 'S'.
move it_mseg-menge to ls_quantity.
sum_receipt = sum_receipt + ls_quantity.
elseif
( it_mseg-bwart eq '261'
or it_mseg-bwart eq '262'
or it_mseg-bwart eq '601'
or it_mseg-bwart eq '602'
or it_mseg-bwart eq '201'
or it_mseg-bwart eq '202'
or it_mseg-bwart eq '551'
or it_mseg-bwart eq '552'
or it_mseg-bwart eq '541'
or it_mseg-bwart eq '542'
or it_mseg-bwart eq '331'
or it_mseg-bwart eq '332'
or it_mseg-bwart eq '333'
or it_mseg-bwart eq '334'
or it_mseg-bwart eq '335'
or it_mseg-bwart eq '336'
or it_mseg-bwart eq '641'
or it_mseg-bwart eq '642'
or it_mseg-bwart eq '643'
or it_mseg-bwart eq '644'
or it_mseg-bwart eq '351'
or it_mseg-bwart eq '352'
or it_mseg-bwart eq '301'
or it_mseg-bwart eq '302'
or it_mseg-bwart eq '303'
or it_mseg-bwart eq '304'
or it_mseg-bwart eq '309'
or it_mseg-bwart eq '310'
or it_mseg-bwart eq '909'
or it_mseg-bwart eq '910'
or it_mseg-bwart eq '701') and it_mseg-shkzg = 'S'.
move it_mseg-menge to ls_quantity.
sum_issue = sum_issue + ls_quantity.
endif.
if ( it_mseg-bwart eq '101' or it_mseg-bwart eq '102'
or it_mseg-bwart eq '103' or it_mseg-bwart eq '104'
or it_mseg-bwart eq '105' or it_mseg-bwart eq '106')
And it_mseg-shkzg = 'S'.
move it_mseg-menge to ls_quantity.
sum_po = sum_po + ls_quantity.
endif.
if ( it_mseg-bwart eq '531'
or it_mseg-bwart eq '532') and it_mseg-shkzg = 'S'.
move it_mseg-menge to ls_quantity.
sum_531 = sum_531 + ls_quantity.
endif.
if ( it_mseg-bwart eq '541' or it_mseg-bwart eq '542' ).
move it_mseg-menge to ls_quantity.
sum_541 = sum_541 + ls_quantity.
endif.
if ( it_mseg-bwart eq '102' or it_mseg-bwart eq '102' ).
move it_mseg-menge to ls_quantity.
sum_101 = sum_101 + ls_quantity.
endif.
if ( it_mseg-bwart eq '561' or it_mseg-bwart eq '562'
OR IT_MSEG-BWART EQ '511' OR it_mseg-bwart eq '512').
move it_mseg-menge to ls_quantity.
sum_511 = sum_511 + ls_quantity.
endif.
if ( it_mseg-bwart eq '261' or it_mseg-bwart eq '262').
move it_mseg-menge to ls_quantity.
sum_261 = sum_261 + ls_quantity.
endif.
if ( it_mseg-bwart eq '601' or it_mseg-bwart eq '602').
move it_mseg-menge to ls_quantity.
sum_601 = sum_601 + ls_quantity.
endif.
if ( it_mseg-bwart eq '201' or it_mseg-bwart eq '202').
move it_mseg-menge to ls_quantity.
sum_201 = sum_201 + ls_quantity.
endif.
if ( it_mseg-bwart eq '551' or it_mseg-bwart eq '552').
move it_mseg-menge to ls_quantity.
sum_551 = sum_551 + ls_quantity.
endif.
if ( it_mseg-bwart eq '331' or it_mseg-bwart eq '332'
or it_mseg-bwart eq '333' or it_mseg-bwart eq '334'
or it_mseg-bwart eq '335' or it_mseg-bwart eq '336').
move it_mseg-menge to ls_quantity.
sum_331 = sum_331 + ls_quantity.
endif.
if ( it_mseg-bwart eq '161' or it_mseg-bwart eq '162'
or it_mseg-bwart eq '123' or it_mseg-bwart eq '122').
move it_mseg-menge to ls_quantity.
sum_161 = sum_161 + ls_quantity.
endif.
if ( it_mseg-bwart eq '641' or it_mseg-bwart eq '642'
or it_mseg-bwart eq '643' or it_mseg-bwart eq '644'
or it_mseg-bwart eq '351' or it_mseg-bwart eq '352'
or it_mseg-bwart eq '301' or it_mseg-bwart eq '302'
or it_mseg-bwart eq '303' or it_mseg-bwart eq '304').
move it_mseg-menge to ls_quantity.
sum_641 = sum_641 + ls_quantity.
endif.
if ( it_mseg-bwart eq '305' or it_mseg-bwart eq '306').
move it_mseg-menge to ls_quantity.
sum_305 = sum_305 + ls_quantity.
endif.
if ( it_mseg-bwart eq '309' or it_mseg-bwart eq '310'
or it_mseg-bwart eq '909' or it_mseg-bwart eq '910').
move it_mseg-menge to ls_quantity.
sum_309 = sum_309 + ls_quantity.
endif.
if ( it_mseg-bwart eq '701').
move it_mseg-menge to ls_quantity.
sum_701 = sum_701 + ls_quantity.
endif.
if ( it_mseg-bwart eq '702').
move it_mseg-menge to ls_quantity.
sum_702 = sum_702 + ls_quantity.
endif.
at end of budat.
it_head-closing_bal = ( it_head-openbal + sum_receipt ) - sum_issue.
w_opbal = it_head-closing_bal.
move it_mseg-matnr to it_head-matnr.
move it_mseg-budat to it_head-p_date.
move it_mseg-bwart to it_head-bwart.
move sum_po to it_head-R_po.
move sum_101 to it_head-R_ProdOrd.
move sum_531 to it_head-R_ByProd.
move sum_511 to it_head-R_OTHERS.
move sum_receipt to it_head-r_total.
move sum_261 to it_head-I_Prod.
move sum_601 to it_head-I_cust.
move sum_201 to it_head-I_CostCen.
move sum_551 to it_head-I_Scrapping.
move sum_541 to it_head-I_subcontractor.
move sum_331 to it_head-I_Sampling.
move sum_issue to it_head-i_total.
move sum_161 to it_head-PurRet.
move sum_641 to it_head-stock_out.
move sum_305 to it_head-stock_in.
move sum_309 to it_head-M_to_M_transit.
move sum_701 to it_head-phy_loss.
move sum_702 to it_head-phy_gain.
append it_head.
w_chk = 0.
sum_issue = 0.
sum_receipt = 0.
sum_531 = 0.
sum_541 = 0.
sum_101 = 0.
SUM_511 = 0.
sum_261 = 0.
sum_601 = 0.
sum_201 = 0.
sum_po = 0.
sum_551 = 0.
sum_641 = 0.
sum_701 = 0.
sum_702 = 0.
endat.
clear it_head.
clear it_mseg.
endif.
endloop.
sort it_mseg by matnr budat bwart.
sort it_head by matnr p_date bwart.
delete ADJACENT duplicates from it_head.
endform. " f004_determine_mat_docs
*& Form f005_receipts_issues
* Desc
form f005_receipts_issues using p_it_mseg like it_mseg[]
changing p_it_issue like it_issue[]
p_it_receipt like it_receipt[]
p_it_matnr like it_matnr[].
data : lwa_mseg like line of p_it_mseg[],
lwa_issue like line of p_it_issue[],
lwa_receipt like line of p_it_receipt[],
lwa_matnr like line of p_it_matnr[],
ls_quantity type mseg-menge,
wa_head type ty_head,
lwa_stockclose like line of it_stockclose[].
* sort it_head by bwart p_date matnr.
* loop at it_head into wa_head.
* read table p_it_mseg into lwa_mseg with key bwart = wa_head-bwart.
* if sy-subrc = 0.
* if ( lwa_mseg-bwart eq '101'
* or lwa_mseg-bwart eq '102'
* or lwa_mseg-bwart eq '103'
* or lwa_mseg-bwart eq '104'
* or lwa_mseg-bwart eq '105'
* or lwa_mseg-bwart eq '106') and lwa_mseg-shkzg = 'S'.
* loop at p_it_mseg into lwa_mseg where matnr = wa_head-matnr
* and budat = wa_head-p_date
* and bwart = wa_head-bwart.
* move lwa_mseg-menge to ls_quantity.
* wa_head-R_PO = ls_quantity + wa_head-R_PO.
* modify it_head from wa_head.
* endloop.
* clear ls_quantity .
* endif.
* if ( lwa_mseg-bwart eq '641'
* and lwa_mseg-shkzg = 'S' ).
* loop at p_it_mseg into lwa_mseg where matnr = wa_head-matnr
* and budat = wa_head-p_date
* and bwart = wa_head-bwart.
* IF SY-SUBRC = 0 .
* move lwa_mseg-menge to ls_quantity.
* wa_head-stock_out = ls_quantity + wa_head-stock_out.
* modify it_head from wa_head.
* ENDIF.
* endloop.
* clear ls_quantity .
* endif.
* read table it_stockclose into lwa_stockclose
* with key matnr = wa_head-matnr.
* "budat = wa_head-p_date.
* if sy-subrc = 0.
* wa_head-openbal = lwa_stockclose-labst.
* modify it_head from wa_head.
* ENDIF.
* endif.
* endloop.
* sort it_head by bwart p_date matnr.
* loop at it_head into wa_head.
* read table it_mseg into lwa_mseg with key bwart = wa_head-bwart.
* if sy-subrc = 0.
* if ( lwa_mseg-bwart eq '101'
* or lwa_mseg-bwart eq '102'
* or lwa_mseg-bwart eq '103'
* or lwa_mseg-bwart eq '104'
* or lwa_mseg-bwart eq '105'
* or lwa_mseg-bwart eq '106') and lwa_mseg-shkzg = 'S'.
* loop at it_mseg into lwa_mseg where matnr = wa_head-matnr
* and budat = wa_head-p_date
* and bwart = wa_head-bwart.
* move lwa_mseg-menge to ls_quantity.
* wa_head-R_PO = ls_quantity + wa_head-R_PO.
* modify it_head from wa_head.
* endloop.
* clear ls_quantity .
* endif.
* if ( lwa_mseg-bwart eq '641'
* and lwa_mseg-shkzg = 'S' ).
* loop at it_mseg into lwa_mseg where matnr = wa_head-matnr
* and budat = wa_head-p_date
* and bwart = wa_head-bwart.
* IF SY-SUBRC = 0 .
* move lwa_mseg-menge to ls_quantity.
* wa_head-stock_out = ls_quantity + wa_head-stock_out.
* modify it_head from wa_head.
* ENDIF.
* endloop.
* clear ls_quantity .
* endif.
* read table it_stockclose into lwa_stockclose
* with key matnr = wa_head-matnr.
* "budat = wa_head-p_date.
* if sy-subrc = 0.
* wa_head-openbal = lwa_stockclose-labst.
* modify it_head from wa_head.
* ENDIF.
* endif.
* endloop.
endform. " f005_receipts_issues
*& Form COMMENT_BUILD
* text
* --> p1 text
* <-- p2 text
FORM comment_build USING p_it_st_list_top_of_page TYPE slis_t_listheader
DATA: ls_line TYPE slis_listheader.
REFRESH p_it_st_list_top_of_page.
CLEAR ls_line.
ls_line-typ = 'H'.
ls_line-info = 'Details of Stock Ledger'.
APPEND ls_line TO p_it_st_list_top_of_page.
ENDFORM. " COMMENT_BUILD
*& Form TOP_OF_PAGE-ALV
* text
FORM top_of_page-alv.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = it_st_list_top_of_page.
ENDFORM. "TOP_OF_PAGE-ALV
*& Form FIELDCAT
* -->P_IT_ST_FIELDCAT[] text
FORM fieldcat USING p_it_st_fieldcat TYPE slis_t_fieldcat_alv.
DATA: ls_fieldcat TYPE slis_fieldcat_alv.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'P_DATE'.
ls_fieldcat-datatype = 'P_DATE'.
ls_fieldcat-outputlen = 18.
ls_fieldcat-seltext_m = text-002 .
* ls_fieldcat-rollname = 'MATNR'.
ls_fieldcat-key = 'X'.
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'MATNR'.
ls_fieldcat-rollname = 'MATNR'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-outputlen = 18.
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'MAKTX'.
ls_fieldcat-rollname = 'MAKTX'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-outputlen = 40.
APPEND ls_fieldcat TO p_it_st_fieldcat.
* CLEAR ls_fieldcat.
* ls_fieldcat-fieldname = 'BWART'.
* ls_fieldcat-rollname = 'BWART'.
* ls_fieldcat-ddictxt = 'L'.
* APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'OPENBAL'.
ls_fieldcat-rollname = 'OPENBAL'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-003 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'R_PO'.
ls_fieldcat-rollname = 'R_PO'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-004 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'R_PRODORD'.
ls_fieldcat-rollname = 'R_PRODORD'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-005 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'R_BYPROD'.
ls_fieldcat-rollname = 'R_BYPROD'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-006 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'R_OTHERS'.
ls_fieldcat-rollname = 'R_OTHERS'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-007 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'R_TOTAL'.
ls_fieldcat-rollname = 'R_TOTAL'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-008 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'I_PROD'.
ls_fieldcat-rollname = 'I_PROD'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-009 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'I_CUST'.
ls_fieldcat-rollname = 'I_CUST'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-010 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'I_COSTCEN'.
ls_fieldcat-rollname = 'I_COSTCEN'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-011 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'I_SCRAPPING'.
ls_fieldcat-rollname = 'I_SCRAPPING'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-012 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'I_SUBCONTRACTOR'.
ls_fieldcat-rollname = 'I_SUBCONTRACTOR'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-013 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'I_SAMPLING'.
ls_fieldcat-rollname = 'I_SAMPLING'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-014 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'I_TOTAL'.
ls_fieldcat-rollname = 'I_TOTAL'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-015 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'PURRET'.
ls_fieldcat-rollname = 'PURRET'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-016 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'STOCK_OUT'.
ls_fieldcat-rollname = 'STOCK_OUT'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-017 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'STOCK_IN'.
ls_fieldcat-rollname = 'STOCK_IN'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-018 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'STOCK_TRANSIT'.
ls_fieldcat-rollname = 'STOCK_TRANSIT'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-019 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'M_TO_M_TRANSIT'.
ls_fieldcat-rollname = 'M_TO_M_TRANSIT'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-020 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'PHY_LOSS'.
ls_fieldcat-rollname = 'PHY_LOSS'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-021 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'PHY_GAIN'.
ls_fieldcat-rollname = 'PHY_GAIN'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-022 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'CLOSING_BAL'.
ls_fieldcat-rollname = 'CLOSING_BAL'.
ls_fieldcat-ddictxt = 'L'.
ls_fieldcat-seltext_m = text-023 .
APPEND ls_fieldcat TO p_it_st_fieldcat.
ENDFORM. " FIELDCAT
*& Form LAYOUT_BUILD
* text
* -->P_ST_LAYOUT text
FORM layout_build USING p_st_layout TYPE slis_layout_alv.
p_st_layout-box_fieldname = 'SELK'. " Checkbox
p_st_layout-get_selinfos = 'X'.
p_st_layout-f2code = 'PICK' . " Doppelklickfunktion
p_st_layout-confirmation_prompt = 'X'. "Sicherheitsabfrage
p_st_layout-key_hotspot = 'X'. "Schlüssel als Hotspot
p_st_layout-info_fieldname = 'COL'. "Zeilenfarbe
ENDFORM. " LAYOUT_BUILD
*& Form REUSE_ALV_LIST_DISPLAY
* text
FORM reuse_alv_list_display .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_background_id = 'ALV_BACKGROUND'
i_callback_program = s_repid
* I_CALLBACK_PF_STATUS_SET = S_STATUS
* I_CALLBACK_USER_COMMAND = S_USER_COMMAND
* I_STRUCTURE_NAME = ''
* IS_LAYOUT = ST_LAYOUT
it_fieldcat = it_st_fieldcat[]
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS = ST_SP_GROUP
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = S_SAVE
* IS_VARIANT = S_VARIANT
IT_EVENTS = IT_ST_EVENTS[]
* IT_EVENT_EXIT =
* IS_PRINT =
* IS_REPREP_ID =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
t_outtab = it_head.
ENDFORM. " REUSE_ALV_LIST_DISPLAY
*& Form EVENTTAB_BUILD
* text
* -->P_IT_ST_EVENTS[] text
FORM eventtab_build USING p_st_events TYPE slis_t_event .
DATA: ls_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = p_st_events.
READ TABLE p_st_events WITH KEY name = slis_ev_top_of_page
INTO ls_event.
IF sy-subrc = 0.
MOVE st_formname_top_of_page TO ls_event-form.
APPEND ls_event TO p_st_events.
ENDIF.
READ TABLE p_st_events WITH KEY name = slis_ev_user_command
INTO ls_event.
IF sy-subrc = 0.
MOVE s_user_command TO ls_event-form.
APPEND ls_event TO p_st_events.
ENDIF.
* READ TABLE p_st_events WITH KEY name = slis_ev_pf_status_set
* INTO ls_event.
* IF sy-subrc = 0.
* MOVE s_status TO ls_event-form.
* APPEND ls_event TO p_st_events.
* ENDIF.
ENDFORM. " EVENTTAB_BUILD
*& Form VARIANT_INIT
* text
* --> p1 text
* <-- p2 text
FORM variant_init .
CLEAR s_variant.
s_variant-report = s_repid.
s_variant-handle = code.
ENDFORM. " VARIANT_INIT -
Where to put Validation Code?
Up until now, Im still having second-thoughts of where to put validation code when setting attributes of an entity.
Right now I have created lots of custom validators --(implement JbovalidatorInterface) that calls stored procedures to validate the value entered. But sometimes, i just use a ViewObject and query it on the setterAttribute method of the Entity and just manually throw a JboException of the value is invalid based on some business rule.
Question is, what are the best practices where to put validation codes? do we have to be strict that we always put all validations on Validators or are we free to just throw JboExceptions anywhere on the BC classes' code.
regards,
Anton1. The reason I have a custom validator and I don't normally use the built in declarative validators is that the error message generated when the validation fails is fixed, only one message. I decided to have create a custom validator is that I need to test a one attribute for many cases in each case should produce a distinct error message. So if I use the built in validators, I would have to create lots of built in validators for that single attribute only. (and i have lots of entities and lots of attributes that needs business rule validation). So, I decided to create a custom validator, that calls the stored procedure, the stored procedure takes care of all test cases, for that attribute only, and I can return a dynamic error message depending on the test case that failed. What do you think about the approach?
It's a little extra work to create a reusable validator class that will only be used once, but whether you do it that way or encapsulate the call in a helper class that your one-off method validator code delegates too, it seems similar to me. So it's more of a stylistic choice for you which you like better. Now, if your reusable validator were enable to encapsulate
2. When I said anywhere; I meant inside the setterAttribute methods on the Entity and on the ViewRowImpl, orThe ViewImpl class or inside a method on an ApplicationModule?
Rather than writing code in the setAttribute, I recommend using attribute-level method validators. This makes it more clear where all your validation code lives.
I don't recommend performing validation in the view object level since entity objects are the component in the system that are tasked with handling validation. It would be easy to circumvent view level validation checks unless you make a lot of assumptions about exactly how your application is working.
3. One other issue is that Validator methods are for validation purposes only. So its not a good idea to put in attribute setters to other attributes inside there. So you put the attribute setter logic outside of the validator usually inside the setAttribute() just after validator returns. But there are cases that is very straightfoward to put validation logic inside the setAttribute; meaning, inside the setAttribute() method, I test for a condition, if it fails, just throw a JboException, if its true, continue with the otherAttributes setter logic.
Whether attribute setting of other attributes is performed in a setter method or in an attribute-level method validator, either way you will need conditional logic to avoid going into a validation "loop" (which eventually will throw an exception if after 10 attempts the object is still not valid at posting time.
Maybe you are looking for
-
How do I keep one Apple ID on my iPhone 4?
I keep having two Apple ID's come up on my iPhone 4. The one I've used for years with iTunes purchases and the new one I just setup for my iPhone when. I prefer to use the new one. How do I sign out of everything since when I try to download apps
-
Help! text is not defined error :(
Hi, I'm a student working on a flash actionscript project for school, and I need to learn how to make objects drag and drop. I have no problem getting the shapes to move and all but I cannot figure out how to make the text change when the shape is dr
-
How much space does Lion and Mountain Lion take up?
I have a 64gb MacBook Air and I dont have many apps or files on it but I only have 30gb left, is this normal? I'm new to Macs
-
Videos automatically playing next show
I use my iPad to watch full seasons of tv shows. In the past month, not exactly sure when, but when I finish a show the iPad is automatically going to the next video in the season and playing it. It used to go back to the list of videos and let me
-
I am getting a "This Connection is Untrusted" Error when I log into my school's classroom website, and therefore cannot access any of the content I need for my class. This is a new problem, I just had to reinstall Mozilla when I upgraded my hard driv