Legal person
Hi Gurus,
I wanted to know is there a standard SAP functionality that if there is change in legal person in infotype 0001 then a organisation reassignment action cannot be performed.
If no, where can the settings be done, as I am not able to perform org reassignemnt when there is change in the legal person.
Please help me understand the functionality of the legal person, where it is used?
Thanks
Kavita
hi,
Check the screen control for infotype 1.is this field showing in the infotype screen as input?try to create manually through PA30.
If its not showing in the screen or shown in display mode,change the screencontrol in table T588M.
sm30->T588M->maintain->double click on the MP000100 with ur variable key->change P0001-JUPER radio button option to 'std'.
Regards,
Manoj.
Similar Messages
-
Change of personnel subarea results in change of legal person
Hi Experts.
I have search in this forum after answer on this question, but haven't find any.
To start with, we have implemented CE.
My problem is that if we have hired a person on wrong date and want to change the date to an earlier date, infotype 0000 is OK, but infotype 0001 will not be changed.
The error message says: Change of personnel subarea results in change of legal person.
I have checked the table V_001P_G and it seems to be right. I can't find any fault.
I have tried all other suggestions I have found in this forum such as, Change and Execute info group when running Change entry/leaving date in PA30. Executing the programs RPUFIXDS and RPUP0001 with negative result.
So if there is anyone who can explain to me what this error message actually means, and of course have a solution, I would be really happy.
Thanks // Peter BHi Peter,
Apply the following note,
1487263 - transaction PA41 error message is displayed in IT00
after implementing, Kindly use transaction PA41.
The 'Correct action' function (PA41) offers a special functionality for
hiring and termination events only: When changing the begin date of
the event the begin date of all infotype records belonging to the
infogroup assigned will be shifted accordingly.
Hope this will solve your issue.
Regards,
Meera -
Updating the IT0001 field Legal Person
Hi All,
I cant able to make any screen modification in the field Legal Person... Even if i update the field by means of using the FM HR_INFOTYPE_OPERATION its not updating.
Please provide me a solution how can i update that field.
Thanks
YogeshHi,
Thanks for your reply. But i have use the same code for updating the field SACHP for that i can able to make it. but when i try to update this Legal Person ID alone its not updating.
Can you Provide the solution
Thanks
Yogesh -
Error: Ref.pers.nos. must have the same legal person
Hi All,
I keep getting this error message when setting up a Multiple Employment for an employee.
When I get to infotype 0121 (create RefPerNo) I get the above message.
I only get it for a couple of employees I have tried to create a second position for and others work fine.
I don't understand the message as the action copies all the personnel data from the primary record, so it is the same person!?! Details are identical on 0002.
Please Help
Sam<b></b>Hi SAM,
There might be some mismatch in data or might be because of authorization.
Let us assume, that you are using Reference Personnel number to assign different assignment for the employee, if so, you no need to maintain it in Reference number, do your Personnel Action as usual and assign different Position for the employee, so that, system recognize it as, different assignment for the same employee.
Let us know the exact error message, you are getting while executing.
Good Luck
Om
Reward it, if u feel helpful. -
Process of debit of duty in case of purchase return
DEar all,
can i have the system customised in such a way that for the scenario of debit of duty in case of purcase return , the debit should happen to rg 23 part2 . And if there is no balance then it should debit rg23 c part 2 and if there is a no balance in it then it should then debit PLA .???
If yes how can i do the same . Please mention if any config change is there?HI,
can i have the system customised in such a way that for the scenario of debit of duty in case of purcase return , the debit should happen to rg 23 part2 . And if there is no balance then it should debit rg23 c part 2 and if there is a no balance in it then it should then debit PLA .???
First basic things
Rg23A
Rg23C
RG23D
PLA
are different register and for different purpose.
EX< if you are returning row material to vendor then Rg23A will update as row material you know it very well.
now how you can use Rg23C balance fro row material ?
for Rg23C for asset and consumable 50% excise value put in Hold
yes if don't have any balance in Rg23A then you have to use PLA
still i have dought on that.
I know in utilization we can use PLA but for sale ( return nothing but indirect sale) can we used check with your legal person ?
Regards
Kailas Ugale -
Help of professionals to increase your income via Money Investment!
About the company - money management
Private Fund Management is an international investment company specializing in asset management services. During its long history, it has achieved and occupied a stable position in the financial market and won the confidence of numerous investors from all over the world.
Private Fund Management’s achievements in statistics:
• Today the company’s assets holdings are equal to $3 billion.
• Its profits grow at a steady speed of about $40-50 thousand a week.
• Currently the company has more than 20,000 customers.
• Private Fund Management opens up to 200 new accounts a day.
• The size of investments made by its clients varies from $1,000 to $100,000,000.
What is the reason for the booming development of Private Fund Management? How does this company manage to increase the profits it brings to its customers?
Professionalism of our staff
Any company is its staff in the first place. The team of Private Fund Management consists of only top-level professionals - the graduates of the world’s best universities. Every single day they utilize various financial tools in order to sign advantageous contracts, thus ensuring maximum profits for the clients of Private Fund Management.
Developed corporate culture
Each person working for Private Fund Management follows the rules that make up the company’s corporate culture, which is based on such key elements such as: ethical behavior, top service quality, and non-stop improvement of services. The process of staffing the company is based upon the principle of creating a team of like-minded people motivated to achieve the best financial results and avoid any risks that assets may be prone to.
Confidence of our clients
The main rule of Private Fund Management’s operation is the strict observance of the client’s interests. We aim at achieving stable high profits off the invested means and take the maximum care of the safety and reliability of the capital by means of insuring every single investment.
Immediate proximity of our offices to the customers in any country of the world
Private Fund Management pays special attention to the quality and availability of services intended for investors of absolutely different levels. Our investment company collaborates with reliable advertisement agencies in different countries. Due to this fact, any client, no matter the country of origin, gets full informational support from the local partner of Private Fund Management. You can find the contact information provided by our partners at: http://myinvestbusiness.com/about.
Asset management
Asset management comprises the management of the client’s funds conducted on the basis of the contract signed by the investor and the management company. An investor transfers his or her powers to the management company, which chooses a professional and effective investment strategy based on the client’s aims and financial capability.
The traders react to any fluctuations on the financial market by immediately correcting the investment strategy in order to achieve and maintain high profit levels for an investor.
Asset management for our clients
• The reliability of cooperation with a professional investment company.
• No restrictions concerning the sum of the initial investment.
• Guaranteed profit rate acquired at specified periods of time.
• All decisions concerning the management of the acquired profits are made by the investor himself.
• The management company works hard to increase the investor’s income since the size of the brokerage received by it depends on the profit acquired by the client.
Does this investment method suit you?
Business development
The main reason for investing money into something is the formation of an additional source of passive income. If a client chooses the right way of investing money, he or she will be able to enjoy a certain degree of freedom in the development of his or her main business. Having a predetermined regular income, you will be able to expand the influence of your company at the market, invest the acquired profits into the development of new solutions and products, and define the prospective growth taking into consideration the peculiar features of your own stabilization fund.
Personal aims
By transferring a part of your funds to an asset management company, you will be able to figure out how you are going to use the acquired additional income for your own purposes. This sum used to be just a kind of stabilizer, but now you will be able to spend more money on recreation and unplanned purchases without increasing the size of the supply subtracted from your regular income.
Increasing the assets
By increasing the amount of funds transferred to an asset management company by means of acquired profits you will be increasing your own capital. At the same time the money doesn’t just get accumulated – it keeps on working for you. Consequently, the larger is the invested sum, the more profit you get from it.
The advantages of transferring free funds into asset management
The ability to build up your own investment business.
Freedom in the process of designing more ambitious development strategies.
Guaranteed stability and substantial amount of profits.
Additional funds that can be used in the realization of one’s personal aims.
Capital growth and steady increase of the active income.
The advantages that we offer
Individual approach and absolutely straight dealing with our clients. We strive towards close long-term business relationships that are able to bring mutual profits to our clients, partners, and ourselves. Guided by the willingness to achieve our common goals, we pay maximum attention to each of our investors. We value long-term relationships with our investors much higher than one-time transactions – that’s why we keep on doing our best to give maximum confidence to our clients and ensure the perfect performance of our liabilities.
Reliability. We minimize the risks taken by our clients by means of investment diversification and the utilizations of a specific investment strategy. All the investments that we manage get insured at the conditions that guarantee fullest protection of our clients’ interests.
Blameless reputation. During our history we have signed a lot of profitable contracts. Long years of successful operation at the international market have resulted in the establishment of our company’s blameless reputation based on the professional operation of our staff as well as the highest quality of the provided services.
Safe Investment Management Conception. Our work is based upon the principles; the effectiveness of which has been tested and proven in practice.
• Objective valuation of expectations.
• Detailed reports about the achieved results.
• Scrupulous risk management.
• Full correspondence of our activity to the current legislation.
• The willingness to find an appropriate solution for every particular problem.
• Creative approach towards the problems experienced by our clients.
• Aiming at the establishment of long-term business relationships with our clients.
The clients working with Private Fund Management should be fully confident of the reliability and the potential profitability of their investment. Our employees will help you choose the most convenient and well-paying investment option for you after picking up the appropriate investment strategy and investment portfolio.
Investment portfolios
While choosing the appropriate investment means one will always have to look for the happy medium between two indices: profitability and possible risks. These indices are in direct relation to each other - the bigger is the potential profit, the bigger is the potential risk. It has to be noted that the concept of risk is getting less and less relevant these days since within the past seven years of our operation at the financial market none of our clients have ever received profits lower than those agreed upon during the process of signing the contract. We offer solutions able to help each of our customers to choose the investment means that is the most profitable for him or her in particular.
What is an investment portfolio?
An investment portfolio is the combination of assets that you invest your money into. The process of building up an investment portfolio is based upon the process of choosing securities. The main reason for creating a portfolio is pretty simple – if done correctly, it will allow you to supply your set of securities with such investment features (profitability and risk) that cannot be achieved by purchasing only stocks or bonds, for instance. Combination is the only key to creating a good investment portfolio.
Peculiar features of different investment portfolios
All investment portfolios are built up in accordance with one of the following strategies:
• The strategy aimed at the aggressive capital growth stimulation with high level of risk. Potential annual profitability of this strategy can be estimated at about 35%. This strategy is based upon the utilization of tools with a high level of risk: shares, futures, and options.
• The strategy aimed at low-risk investment and intended for steady capital growth (about 22% annually). Stocks can serve as an example of low-risk investment tools.
By combining high- and low-risk approaches in different proportions, the experts of Private Fund Management develop investment portfolios based on the requirements set by different clients.
Private Fund Management investment portfolios
Fixed income
Risk: zero.
Liquidity: one week.
Recommended investment period: 6-12 months
Expected income: 20-22%.
“Fixed income” portfolio allows increasing assets slowly but without any risk.
A “fixed income” portfolio is appropriate for those investors who aim at getting profits higher than those brought by ordinary bank deposits but want to stick to the liquidity and the reliability of bank deposits. The assets in this case will be long-term corporate and municipal bonds turned into hard currency.
A “fixed income” investment portfolio comprises bonds that are kept until the moment of their purchase – that’s why there is no investment risks associated with this type of portfolio.
Bond portfolio
Risk: minimal.
Liquidity: one week.
Recommended investment period: 12-18 months.
Expected income: 22-25%.
Expected risk: 6%.
Bond portfolio is a happy medium between a good income level and relatively small investment risk.
A bond portfolio will allow you to get profits higher than those acquired by means of an average bank deposit. The assets in this case will be corporate, municipal, and state bonds turned into U.S. currency. The peculiar features of this kind of portfolio are: low risk level and high liquidity.
High profits acquired through the use of this portfolio result from the increase in price of the equities and the steady development of the company - a share in which is purchased by the investor.
Conservatively balanced portfolio
Risk: medium.
Liquidity: 1-2 weeks.
Recommended investment period: 12-18 months
Expected income: 25-30%.
Expected risk: 9%.
Conservatively balanced portfolio – high profits acquired with a relatively low risk level achieved through asset diversification.
A client who chooses to invest his money into a conservatively balanced portfolio gets higher profits than a person holding a bond portfolio. In this case the level of risk goes up just a little if compared to a bond portfolio.
A conservatively balanced portfolio includes the stocks of worldwide companies as well as various bonds. The ratio between these two types of securities is the following: 20% - stocks, 80% - bonds.
Actively balanced portfolio
Risk: medium.
Liquidity: 1-2 weeks.
Recommended investment period: 12-18 months.
Expected income: 30-35%.
Expected risk: 15%.
Actively balanced portfolio shows the highest levels of expected income but acceptably high levels of expected risk as well.
An actively balanced portfolio is based on the same principle with the conservatively balanced one. The assets that it offers are also stocks and bonds of worldwide companies. The only thing that makes it different from the previous portfolio is the ratio of stocks to bonds. This ratio for a well-balanced portfolio will vary from 50:50 to 75:25.
An actively balanced portfolio allows the client to gain profits as big as those acquired through investment into bonds but at the same time reducing the investment risks.
You can make up your mind about the choice of a certain portfolio with the help of the following table showing the income that you will be able to get through the usage of different investment products.
Income table
Our company aims at working in full correspondence with the requirements set by the times that we are living in and supplying its clients with well-paying investment products. The size of the expected income from each of the portfolios is reflected in the following table.
Sum of investment, $ Period Profits by portfolio
With fixed liquidity Bond Conservatively balanced Actively balanced
10 000 6 months 11 100
11 250 11 500 11 750
1 year 12 200
12 500 13 000 13 500
3 years 16 600
17 500 19 000 20 500
5 years 20 100 22 500 25 000 27 500
50 000 6 months 55 500
56 250 57 500 58 750
1 year 61 000
62 500 65 000 67 500
3 years 83 000
87 500 95 000 102 500
5 years 105 000 112 500 125 000 137 500
100 000 6 months 111 000
112 500 115 000 117 500
1 year 122 000
125 000 130 000 135 000
3 years 166 000
175 000 190 000 205 000
5 years 210 000 225 000 250 000 275 000
500 000 6 months 555 000
562 500 575 000 587 500
1 year 610 000
625 000 650 000 675 000
3 years 830 000
875 000 950 000 1 025 000
5 years 1 050 000 1 125 000 1 250 000 1 375 000
1 000 000 6 months 1 110 000
1 125 000 1 150 000 1 175 000
1 year 1 220 000
1 250 000 1 300 000 1 350 000
3 years 1 660 000
1 750 000 1 900 000 2 050 000
5 years 2 100 000 2 250 000 2 500 000 2 750 000
Investment insurance
We are fully aware of the fact that most investors are afraid of bankruptcy and shutdown of their asset management company. In order to protect the rights and legal interests of our investors, and to stimulate confidence in our company and attract new investments, we offer our clients to insure the full sum of their investments (including the interest) in an international insurance agency.
Which investments can be insured?
A client of our company can insure the money (no matter the sum or the currency) put into an investment account at Private Fund Management by any natural or legal person. The interest gets insured only if it has been added to the main body of the investment in accordance with the terms of the contract.
What should you know about the replacement of capital?
This is how the insurance system works: in case of Private Fund Management’s shutdown or loss of investment license, all of its investors get fixed capital replacements. In accordance with the investment insurance law, the repaid sum should be equal to 100% of the invested one.
Replacement of invested capital is made in the currency, which the client was using to open his or her investment account. The investor may choose to get the replaced sum in cash or via wire transfer.
Conclusion
During the past few years, the staff of Private Fund Management has managed to reach the heights that numerous enterprises with much longer history are still dreaming of. They have established a successful company aiming at saving and increasing the clients’ capital.
In our work we strive towards perfection and blameless reputation. And now we can already say that Private Fund Management is a full-service management company that can be considered a highly effective financial market guide and the provider of profitable financial solutions for its clients.
The staff of Private Fund Management will help you choose the most profitable and convenient investment option through picking out an appropriate investment strategy and building up an appropriate investment portfolio. Test it yourself. We will be happy to work with you!
Contact us
The representatives of Private Fund Management team will be happy to answer all your questions by phone at:
USA/Canada + 16462332071
UK + 442081332017
We guarantee to respond to any letters sent to: [email protected]
You will be able to find additional information about our company and the services that it offers at: http://www.my-investment.comThe limit imposed by Facebook has been a moving target. It has not been that long since the limit was 200 (it is now 1000). You do not say what version of Aperture and OSX you are using, but if not the latest, it is possible that the change in limit by FB has not been updated, and may not be updated in earlier verions?
I can't say for sure, as I seldom put more than 20 photos in any one album. I don't have any friends that I would expect to plow thru 1000, or even 200.
Ernie -
openSuse 11.0 will be shipped with E.U.L.A. Take a look...
The Software may contain an automatic disabling mechanism that prevents its use after a certain period of time, so You should back up Your system and take other measures to prevent any loss of files or data.
lol lol lol lol lol lol lol!!!
The full E.U.L.A.
openSUSE 11.0
Novell Pre-Release Software License Agreement
PLEASE READ THIS AGREEMENT CAREFULLY. BY INSTALLING OR OTHERWISE USING
THE SOFTWARE (INCLUDING ITS COMPONENTS), YOU AGREE TO THE TERMS OF
THIS AGREEMENT. IF YOU DO NOT AGREE WITH THESE TERMS, DO NOT DOWNLOAD,
INSTALL OR USE THE SOFTWARE AND, IF APPLICABLE, RETURN THE ENTIRE
UNUSED PACKAGE TO THE RESELLER WITH YOUR RECEIPT FOR A REFUND. THE
SOFTWARE MAY NOT BE SOLD, TRANSFERRED, OR FURTHER DISTRIBUTED WITHOUT
PRIOR WRITTEN AUTHORIZATION FROM NOVELL.
RIGHTS AND LICENSES
This Novell Software License Agreement ("Agreement") is a legal
agreement between You (an entity or a person) and Novell, Inc.
("Novell") with respect to the software product identified in the
title of this Agreement, media (if any) and accompanying documentation
(collectively the "Software").
The Software is a collective work of Novell. You may make and use
unlimited copies of the Software for Your distribution and use within
Your Organization. You may make and distribute unlimited copies of
the Software outside Your organization provided that: 1) You receive
no consideration; and, 2) you do not bundle or combine the Software
with another offering (e.g., software, hardware, or service). The
term "Organization" means a legal entity, excluding subsidiaries and
affiliates with a separate existence for tax purposes or for legal
personality purposes. An example of an Organization in the private
sector would be a corporation, partnership, or trust, excluding any
subsidiaries or affiliates of the organization with a separate tax
identification number or company registration number. In the public
sector, an example of Organization would be a specific government
body or local government authority.
The Software is a modular operating system. Most of the components
are open source packages, developed independently, and accompanied by
separate license terms. Your license rights with respect to
individual components accompanied by separate license terms are
defined by those terms; nothing in this Agreement (including, for
example, the "Other License Terms and Restrictions," below) shall
restrict, limit, or otherwise affect any rights or obligations You may
have, or conditions to which You may be subject, under such license
terms.
While the license terms for a component may authorize You to
distribute the component, You may not use any Novell marks (e.g., SUSE
and SUSE LINUX) in distributing the component, whether or not the
component contains Novell marks.
OTHER LICENSE TERMS AND RESTRICTIONS
The Software is protected by the copyright laws and treaties of the
United States ("U.S.") and other countries and is subject to the
terms of this Agreement. The Software is licensed to You, not sold.
The Software may be bundled with other software programs ("Bundled
Programs"). Your license rights with respect to Bundled Programs
accompanied by separate license terms are defined by those terms;
nothing in this Agreement shall restrict, limit, or otherwise affect
any rights or obligations You may have, or conditions to which You may
be subject, under such license terms.
Novell reserves all rights not expressly granted to You. You may not:
(1) reverse engineer, decompile, or disassemble the Software except
and only to the extent it is expressly permitted by applicable law or
the license terms accompanying a component of the Software; or (2)
transfer the Software or Your license rights under this Agreement, in
whole or in part.
Since the Software is of pre-release quality, You should not use the
Software in a commercial or production system. The Software has not
been fully tested and may contain errors and omissions. The Software
should be used only in a testing environment. Novell does not
guarantee that a commercial version of the Software will become
generally available to the public, that target dates will be met, or
that associated products will be released. The entire risk arising
out of Your use of the Software remains with You. The Software may
contain an automatic disabling mechanism that prevents its use after a
certain period of time, so You should back up Your system and take
other measures to prevent any loss of files or data. Use of the
Software is entirely at Your own risk.
You understand and agree that Novell may use any feedback or
information You provide and You hereby grant Novell a perpetual and
irrevocable license to use all such feedback and information for any
purpose without compensation to You, provided that Novell shall not
publicly reference Your name in connection therewith. You represent
and warrant that such feedback and information will not include any
proprietary or confidential information of You or any third party and
that You have full authority to grant the foregoing license.
OWNERSHIP RIGHTS
No title to or ownership of the Software is transferred to You. Novell
and/or its licensors owns and retains all title and ownership of all
intellectual property rights in the Software, including any
adaptations or copies. You acquire only a license to use the Software.
THE SOFTWARE AND OTHER CONFIDENTIAL INFORMATION IS PROVIDED TO YOU
"AS IS" WITHOUT WARRANTY OF ANY KIND. THE ENTIRE RISK AS TO THE
RESULTS AND PERFORMANCE OF THE CONFIDENTIAL INFORMATION IS ASSUMED BY
YOU. NOVELL DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
NONINFRINGEMENT. NOVELL DOES NOT WARRANT THAT THE SOFTWARE WILL
SATISFY YOUR REQUIREMENTS OR THAT THE OPERTATION OF THE SOFTWARE WILL
BE UNINTERRUPTED. Some jurisdictions do not allow certain disclaimers
and limitations of warranties, so portions of the above limitations
may not apply to You. This limited warranty gives You specific rights
and You may also have other rights which vary from state to state.
Non-Novell Products. The Software may include or be bundled with
hardware or other software programs licensed or sold by a licensor
other than Novell. NOVELL DOES NOT WARRANT NON-NOVELL PRODUCTS. ANY
SUCH PRODUCTS ARE PROVIDED ON AN "AS IS" BASIS. ANY WARRANTY SERVICE
FOR NON-NOVELL PRODUCTS IS PROVIDED BY THE PRODUCT LICENSOR IN
ACCORDANCE WITH THE APPLICABLE LICENSOR WARRANTY.
LIMITATION OF LIABILITY
(a) Consequential Losses. NEITHER NOVELL NOR ANY OF ITS LICENSORS,
SUBSIDIARIES, OR EMPLOYEES WILL IN ANY CASE BE LIABLE FOR ANY SPECIAL,
INCIDENTAL, CONSEQUENTIAL, INDIRECT, TORT, ECONOMIC OR PUNITIVE
DAMAGES ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE,
INCLUDING WITHOUT LIMITATION LOSS OF PROFITS, BUSINESS OR DATA, EVEN
IF ADVISED OF THE POSSIBILITY OF THOSE DAMAGES.
(b) Direct Damages. IN NO EVENT WILL NOVELL'S AGGREGATE LIABILITY FOR
DIRECT DAMAGES TO PROPERTY OR PERSON (WHETHER IN ONE INSTANCE OR A
SERIES OF INSTANCES) EXCEED 1.25 TIMES THE AMOUNT PAID BY YOU FOR THE
SOFTWARE OUT OF WHICH SUCH CLAIM AROSE [OR $50 (U.S.) IF YOU RECEIVED
THE SOFTWARE FREE OF CHARGE]. The above exclusions and limitations
will not apply to claims relating to death or personal injury. In
those jurisdictions that do not allow the exclusion or limitation of
damages, Novell's liability shall be limited or excluded to the
maximum extent allowed within those jurisdictions.
GENERAL TERMS
Term. This Beta Agreement becomes effective on the date You legally
acquire the Software and will remain in force until terminated as
follows. This Beta Agreement shall terminate upon the earlier of: (i)
90 days from the date of installation of the Software, (ii) the next
release of a pre-release version, if any, of the Software, (iii) first
commercial shipment by Novell of the Software, (iv) written notice of
termination by either party, or (v) the date on which You breach any
of the terms of this Beta Agreement. Upon termination of this Beta
Agreement, You must cease use of the Software, return to an original
state any actions performed by the Software, destroy the original and
all copies of the Software or return them to Novell, and delete the
Software entirely from Your systems.
Benchmark Testing. This benchmark testing restriction applies to You
if You are a software vendor or if You are performing testing on the
Software at the direction of or on behalf of a software vendor. You
may not, without Novell's prior written consent not to be unreasonably
withheld, publish or disclose to any third party the results of any
benchmark test of the Software. If You are a vendor of products that
are functionally similar to or compete with the Software ("Similar
Products"), or are acting on behalf of such a vendor, and You publish
or disclose benchmark information on the Software in violation of this
restriction, then notwithstanding anything to the contrary in the
Similar Product's end user license agreement, and in addition to any
other remedies Novell may have, Novell shall have the right to perform
benchmark testing on Similar Products and to disclose and publish that
benchmark information and You hereby represent that You have authority
to grant such right to Novell.
Transfer. This Agreement may not be transferred or assigned without
the prior written approval of Novell.
Law and Jurisdiction. This Agreement is governed by the laws of the
State of Utah, U.S. Any action at law relating to this Agreement may
only be brought before the courts of competent jurisdiction of the
State of Utah. If, however, Your country of principal residence is a
member state of the European Union or the European Free Trade
Association, this Agreement is governed by the laws of that country,
and any action at law may only be brought before a court of competent
jurisdiction of that country.
Entire Agreement. This Agreement and the Upgrade/Additive Agreement
(if applicable) sets forth the entire understanding and agreement
between You and Novell and may be amended only in a writing signed by
both parties. NO LICENSOR, DISTRIBUTOR, DEALER, RETAILER, RESELLER,
SALES PERSON, OR EMPLOYEE IS AUTHORIZED TO MODIFY THIS AGREEMENT OR
TO MAKE ANY REPRESENTATION OR PROMISE THAT IS DIFFERENT FROM, OR IN
ADDITION TO, THE TERMS OF THIS AGREEMENT.
Waiver. No waiver of any right under this Agreement will be effective
unless in writing, signed by a duly authorized representative of the
party to be bound. No waiver of any past or present right arising from
any breach or failure to perform will be deemed to be a waiver of any
future right arising under this Agreement.
Severability. If any provision in this Agreement is invalid or
unenforceable, that provision will be construed, limited, modified or,
if necessary, severed, to the extent necessary, to eliminate its
invalidity or unenforceability, and the other provisions of this
Agreement will remain unaffected.
Export Compliance. Any person or entity exporting or re-exporting
Novell products directly or indirectly and via any means, including
electronic transfer, is wholly responsible for doing so in accordance
with the U.S. Export Administration Regulations and the laws of host
countries. Novell assumes no responsibility or liability for your
failure to obtain any necessary export approvals. Approvals are
dependent upon an item's technical characteristics, the destination,
end-use and end-user, as well as other activities of the end user.
Specifically, no Novell product may be exported to embargoed or
otherwise restricted countries or end users. Please consult the
Bureau of Industry and Security web page and other sources before
exporting Novell products from the U.S. and familiarize yourself with
the laws of destination countries before re-exporting Novell products.
This provision shall survive the expiration or earlier termination of
this Agreement. Please refer to the export matrix for Novell products
for more information on exporting Novell Software. You can download a
copy from http://www.novell.com/info/exports/ or obtain a copy from
your local Novell office.
U.S. Government Restricted Rights. Use, duplication, or disclosure by
the U.S. Government is subject to the restrictions in FAR 52.227-14
(June 1987) Alternate III (June 1987), FAR 52.227-19 (June 1987), or
DFARS 252.227-7013 (b)(3) (Nov 1995), or applicable successor
clauses. Contractor/ Manufacturer is Novell, Inc., 1800 South Novell
Place, Provo, Utah 84606.
Other. The application of the United Nations Convention of Contracts
for the International Sale of Goods is expressly excluded.
©1993, 2000-2006 Novell, Inc. All Rights Reserved.
Novell, the "N" logo, and SUSE LINUX are registered trademarks of
Novell, Inc. and openSUSE and the SUSE "geeko" logo are trademarks of
Novell, Inc. in the United States and other countries. Linux is a
registered trademark of Linus Torvalds. Third party trademarks are
property of their respective owners.Well I'm not surprised that some people jump on anything Suse does, it annoys me no one wants to mention the good they do, do.
They sponsor a lot of development for a lot of things, shame rather than sniping at other distros we can't just work together and agree to disagree. Whilst we may disagree with bits I bet we use a fair few bits that are/have been sponsored by Novell/Suse. SCO....
I also think there development model is quite unique/minority to which this thesis does a good job of showing. http://janfredrik.wordpress.com/master-thesis/
...<snip>...
Siobhan O'Mahony's research finds that these firms have to handle a tension between openness and control in their product development, but little research has been done to detail how this balance is achieved.
...<snip>...
Last edited by FeatherMonkey (2008-06-05 12:25:59) -
ORA-31011 : Weird case of parsing/validation failure...
Hello all,
It seems that when trying to insert into an XMLTYPE schema-bound column I am hitting a validation error that I cannot replicate with either XMLSpy os Stylus Studio.
Here follow the schemas that are used, and the offending XML :
envelope-consult.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:publicid:-:DGTAXUD:GENERAL:ENVELOPE:1.0" xmlns:xml="http://www.w3.org/XML/1998/namespace" targetNamespace="urn:publicid:-:DGTAXUD:GENERAL:ENVELOPE:1.0" elementFormDefault="qualified" attributeFormDefault="unqualified" version="EORI-CONSULT-ENVELOPE-1.0">
<xs:annotation>
<xs:documentation>
This XML schema can be used by a national application to
validate consultation envelopes sent to the EORI
CDCO application. It can also be used to validate
consultation responses and acknowledgement envelopes
sent back by the EORI CDCO application. The number of
transactions in an envelope is 5.
For a request envelope, each transaction
contains a single app.message.
For a response envelope, each transaction contains
a single status element and a single app.message
element.
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
<xs:element name="envelope">
<xs:complexType>
<xs:sequence>
<xs:element name="header" type="Header" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="transaction" type="Transaction" maxOccurs="5"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute ref="xml:lang" default="en-GB"/>
</xs:complexType>
</xs:element>
<xs:complexType name="AppMessage">
<xs:sequence>
<xs:element ref="abstract.message"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="Binary">
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attribute name="mime.type" type="xs:string" default="application/octet-stream"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="BusinessRef">
<xs:sequence>
<xs:element ref="abstract.ref"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Header">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="MMIMessageType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute ref="xml:lang" default="en-GB"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="Status">
<xs:sequence>
<xs:element name="mmi.message" type="MMIMessageType" minOccurs="0"/>
<xs:element name="status.detail" type="StatusDetail" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="category" type="StatusCategory" use="required"/>
<xs:attribute name="location" type="xs:string" use="required"/>
</xs:complexType>
<xs:simpleType name="StatusCategory">
<xs:restriction base="xs:string">
<xs:enumeration value="ok"/>
<xs:enumeration value="error"/>
<xs:enumeration value="rejected"/>
<xs:enumeration value="warning"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="StatusDetail">
<xs:sequence>
<xs:element name="business.ref" type="BusinessRef" minOccurs="0"/>
<xs:element name="binary" type="Binary" minOccurs="0"/>
<xs:element name="mmi.message" type="MMIMessageType" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="category" type="StatusDetailCategory" use="required"/>
<xs:attribute name="location" type="xs:string" use="required"/>
<xs:attribute name="code" type="xs:NMTOKEN" use="required"/>
</xs:complexType>
<xs:simpleType name="StatusDetailCategory">
<xs:restriction base="xs:string">
<xs:enumeration value="error"/>
<xs:enumeration value="info"/>
<xs:enumeration value="warning"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Transaction">
<xs:sequence>
<xs:element name="header" type="Header" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="status" type="Status" minOccurs="0"/>
<xs:element name="app.message" type="AppMessage"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
<xs:element name="abstract.message" abstract="true"/>
<xs:element name="abstract.ref" abstract="true"/>
</xs:schema>EORI-consult.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:envelope="urn:publicid:-:DGTAXUD:GENERAL:ENVELOPE:1.0" xmlns="urn:publicid:-:DGTAXUD:EORI:CONSULT:1.0" targetNamespace="urn:publicid:-:DGTAXUD:EORI:CONSULT:1.0" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>
This XML schema contains the definitions of data
elements and messages specific to the EORI consult
functionality.
</xs:documentation>
</xs:annotation>
<xs:import namespace="urn:publicid:-:DGTAXUD:GENERAL:ENVELOPE:1.0" schemaLocation="envelope-consult.xsd"/>
<xs:include schemaLocation="EORI-data.xsd"/>
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
<!-- Base types -->
<xs:simpleType name="Date">
<xs:annotation>
<xs:documentation>Date format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="\d{4}\d{2}\d{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="EoriRecord">
<xs:sequence>
<xs:element name="eori.record.ref" type="EoriNumberRef"/>
<xs:element name="tc.number.list" type="TcNumberList"/>
<xs:element name="economic.operator.details" type="EconomicOperatorDetails"/>
<xs:element name="legal.status.list" type="LegalStatusPeriodList"/>
<xs:element name="establishment.address.list" type="EstablishmentAddressPeriodList"/>
<xs:element name="vat.list" type="VatList"/>
<xs:element name="contact.list" type="ContactPeriodList"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EconomicOperatorDetails">
<xs:sequence>
<xs:element name="full.name" type="EOFullName"/>
<xs:element name="short.name" type="EOShortName"/>
<xs:element name="establishment.date" type="Date" minOccurs="0"/>
<xs:element name="person.type.code" type="TypePerson" minOccurs="0"/>
<xs:element name="economic.activity.code" type="ActivityCode" minOccurs="0"/>
<xs:element name="start.date" type="Date"/>
<xs:element name="expiry.date" type="Date" minOccurs="0"/>
<xs:element name="publication.ind" type="xs:boolean" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ValidityPeriod">
<xs:sequence>
<xs:element name="start.date" type="Date"/>
<xs:element name="end.date" type="Date" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ContactPeriod">
<xs:sequence>
<xs:element name="contact" type="Contact"/>
<xs:element name="validity.period" type="ValidityPeriod"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ContactPeriodList">
<xs:sequence>
<xs:element name="contact" type="ContactPeriod" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EstablishmentAddressPeriod">
<xs:sequence>
<xs:element name="establishment.address" type="EstablishmentAddress"/>
<xs:element name="validity.period" type="ValidityPeriod"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EstablishmentAddressPeriodList">
<xs:sequence>
<xs:element name="establishment.address" type="EstablishmentAddressPeriod" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LegalStatusPeriod">
<xs:sequence>
<xs:element name="legal.status" type="LegalStatus"/>
<xs:element name="validity.period" type="ValidityPeriod"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LegalStatusPeriodList">
<xs:sequence>
<xs:element name="legal.status" type="LegalStatusPeriod" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordFull">
<xs:complexContent>
<xs:extension base="EoriRecord">
<xs:sequence>
<xs:element name="aeo.certificate.lifecycle.list" type="AeoCertificateLifecycleList" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AeoCertificateLifecycleList">
<xs:sequence>
<xs:element name="aeo.certificate.lifecycle" type="AeoCertificateLifecycle" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AeoCertificateLifecycle">
<xs:sequence>
<xs:element name="start.date" type="Date"/>
<xs:element name="end.date" type="Date" minOccurs="0"/>
<xs:element name="aeo.certificate.ref" type="AeoCertificateNumber" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- Consultation messages -->
<xs:element name="eori.record.snapshot.consultation.request" substitutionGroup="envelope:abstract.message">
<xs:complexType>
<xs:sequence>
<xs:element name="snapshot.request.list" type="EoriRecordSnapshotRequestList"/>
</xs:sequence>
<xs:attribute ref="xml:lang" default="en-GB"/>
</xs:complexType>
</xs:element>
<xs:element name="eori.record.full.consultation.request" substitutionGroup="envelope:abstract.message">
<xs:complexType>
<xs:sequence>
<xs:element name="full.request.list" type="EoriRecordFullRequestList"/>
</xs:sequence>
<xs:attribute ref="xml:lang" default="en-GB"/>
</xs:complexType>
</xs:element>
<xs:element name="eori.record.snapshot.consultation.response" substitutionGroup="envelope:abstract.message">
<xs:complexType>
<xs:sequence>
<xs:element name="snapshot.response.list" type="EoriRecordSnapshotResponseList"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="eori.record.full.consultation.response" substitutionGroup="envelope:abstract.message">
<xs:complexType>
<xs:sequence>
<xs:element name="full.response.list" type="EoriRecordFullResponseList"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- Acknowledgement business references -->
<xs:element name="full.request" type="EoriRecordFullRequest" substitutionGroup="envelope:abstract.ref"/>
<xs:element name="snapshot.request" type="EoriRecordSnapshotRequest" substitutionGroup="envelope:abstract.ref"/>
<!-- Snapshot: Consultation messages -->
<xs:complexType name="SnapshotConsultationRequest">
<xs:sequence>
<xs:element name="snapshot.request.list" type="EoriRecordSnapshotRequestList"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SnapshotConsultationResponse">
<xs:sequence>
<xs:element name="snapshot.response.list" type="EoriRecordSnapshotResponseList"/>
</xs:sequence>
</xs:complexType>
<!-- Full: Consultation messages -->
<xs:complexType name="FullConsultationRequest">
<xs:sequence>
<xs:element name="full.request.list" type="EoriRecordFullRequestList"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="FullConsultationResponse">
<xs:sequence>
<xs:element name="full.response.list" type="EoriRecordFullResponseList"/>
</xs:sequence>
</xs:complexType>
<!-- Snapshot: Message structures -->
<xs:complexType name="EoriRecordSnapshot">
<xs:sequence>
<xs:element name="eori.record.ref" type="EoriNumberRef"/>
<xs:element name="tc.number.list" type="TcNumberList" minOccurs="0"/>
<xs:element name="economic.operator.details" type="EconomicOperatorDetails"/>
<xs:element name="legal.status" type="LegalStatus" minOccurs="0"/>
<xs:element name="establishment.address" type="EstablishmentAddress"/>
<xs:element name="vat.list" type="VatList" minOccurs="0"/>
<xs:element name="contact" type="Contact" minOccurs="0"/>
<xs:element name="aeo.certificate.ref" type="AeoCertificateNumber" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordSnapshotRequestList">
<xs:sequence>
<xs:element name="snapshot.request" type="EoriRecordSnapshotRequest" maxOccurs="20"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordSnapshotRequest">
<xs:sequence>
<xs:element name="eori.record.ref" type="EoriNumberRef"/>
<xs:element name="applicable.date" type="Date"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordFullRequestList">
<xs:sequence>
<xs:element name="full.request" type="EoriRecordFullRequest" maxOccurs="20"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordFullRequest">
<xs:sequence>
<xs:element name="eori.record.ref" type="EoriNumberRef"/>
<xs:element name="consultation.purpose.code" type="ConsultationPurpose" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordSnapshotResponseList">
<xs:sequence>
<xs:element name="snapshot.response" type="EoriRecordSnapshotResponse" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordSnapshotResponse">
<xs:sequence>
<xs:element name="eori.record.snapshot" type="EoriRecordSnapshot"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordFullResponseList">
<xs:sequence>
<xs:element name="full.response" type="EoriRecordFullResponse" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EoriRecordFullResponse">
<xs:sequence>
<xs:element name="eori.record.full" type="EoriRecordFull"/>
</xs:sequence>
</xs:complexType>
</xs:schema>EORI-data.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>
This XML schema contains the definitions of data
elements common to the messages exchanged in the
EORI download, upload and consultation
functionalities.
</xs:documentation>
</xs:annotation>
<!-- List types -->
<xs:complexType name="CountryList">
<xs:sequence>
<xs:element name="country" type="Country" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LegalStatusList">
<xs:sequence>
<xs:element name="legal.status" type="LegalStatus" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TcNumberList">
<xs:sequence>
<xs:element name="tc.number" type="TcNumberRef" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="VatList">
<xs:sequence>
<xs:element name="vat" type="Vat" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="CertificateInfoList">
<xs:sequence>
<xs:element name="certificate.info" type="CertificateInfo" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ApplicationInfoList">
<xs:sequence>
<xs:element name="application.info" type="ApplicationInfo" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<!-- Complex types -->
<xs:complexType name="CertificateInfo">
<xs:sequence>
<xs:element name="aeo.certificate.ref" type="AeoCertificateNumber"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ApplicationInfo">
<xs:sequence>
<xs:element name="aeo.application.ref" type="AeoApplicationNumber"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AeoCertificateNumber">
<xs:sequence>
<xs:element name="country.code" type="CountryCode"/>
<xs:element name="aeo.certificate.type.code" type="AeoCertificateTypeCode"/>
<xs:element name="national.number" type="NationalAuthorisationNumber"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AeoApplicationNumber">
<xs:sequence>
<xs:element name="country.code" type="CountryCode"/>
<xs:element name="national.number" type="ApplicationNumber"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Contact">
<xs:sequence>
<xs:element name="phone" type="PhoneNumber" minOccurs="0"/>
<xs:element name="fax" type="PhoneNumber" minOccurs="0"/>
<xs:element name="email" type="Email" minOccurs="0"/>
<xs:element name="name.address" type="NameAddress"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Country">
<xs:choice>
<xs:element name="country.code" type="CountryCode"/>
<xs:element name="country.name" type="CountryName"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="EoriNumberRef">
<xs:sequence>
<xs:element name="country.code" type="CountryCode"/>
<xs:element name="national.number" type="EoNationalNumber"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TcNumberRef">
<xs:sequence>
<xs:element name="country" type="Country"/>
<xs:element name="national.number" type="TcNationalNumber"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="EstablishmentAddress">
<xs:sequence>
<xs:element name="language.code" type="LanguageCode"/>
<xs:element name="name" type="Name" minOccurs="0"/>
<xs:element name="street" type="Street"/>
<xs:element name="postcode" type="Postcode" minOccurs="0"/>
<xs:element name="city" type="City"/>
<xs:element name="country" type="Country"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LegalStatus">
<xs:sequence>
<xs:element name="language.code" type="LanguageCode"/>
<xs:element name="legal.status.description" type="LegalStatusDescription"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="NameAddress">
<xs:sequence>
<xs:element name="language.code" type="LanguageCode"/>
<xs:element name="full.name" type="FullName"/>
<xs:element name="short.name" type="Name" minOccurs="0"/>
<xs:element name="street" type="Street"/>
<xs:element name="postcode" type="Postcode" minOccurs="0"/>
<xs:element name="city" type="City"/>
<xs:element name="country" type="Country"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Vat">
<xs:sequence>
<xs:element name="country.code" type="CountryCode"/>
<xs:element name="number" type="VATNationalNumber"/>
</xs:sequence>
</xs:complexType>
<!-- Simple types -->
<xs:simpleType name="Accepted">
<xs:restriction base="xs:int">
<xs:pattern value="0|1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ActivityCode">
<xs:restriction base="SingleLineString">
<xs:length value="4"/>
<xs:pattern value="[0-9]+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NationalAuthorisationNumber">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="29"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AeoCertificateTypeCode">
<xs:restriction base="SingleLineString">
<xs:length value="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ApplicationNumber">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="29"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="City">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ConsultationPurpose">
<xs:restriction base="xs:string">
<xs:length value="1"/>
<xs:enumeration value="C"/>
<xs:enumeration value="Q"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CountryCode">
<xs:annotation>
<xs:documentation>
Country code format
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CountryName">
<xs:annotation>
<xs:documentation>Country name</xs:documentation>
</xs:annotation>
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Email">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="70"/>
<xs:pattern value="\p{IsBasicLatin}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EoNationalNumber">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="15"/>
<xs:pattern value="\p{IsBasicLatin}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TcNationalNumber">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="15"/>
<xs:pattern value="\p{IsBasicLatin}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LanguageCode">
<xs:annotation>
<xs:documentation>
Language code format
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[a-z][a-z]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LegalStatusDescription">
<xs:annotation>
<xs:documentation>
Legal status value
</xs:documentation>
</xs:annotation>
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="50"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EOFullName">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="300"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EOShortName">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="PhoneNumber">
<xs:restriction base="SingleLineString">
<xs:minLength value="2"/>
<xs:maxLength value="35"/>
<xs:pattern value="\+\p{IsBasicLatin}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Postcode">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="9"/>
<xs:pattern value="\p{IsBasicLatin}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString">
<xs:annotation>
<xs:documentation>
Single line string: Avoid presence of \n (new
line) and \r (return) characters in the string.
Note that pattern ".*" is equivalent.
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[^\n\r]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="FullName">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="100"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Name">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Street">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="35"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TypePerson">
<xs:annotation>
<xs:documentation>
Type of person values as follows: 1-Natural
person, 2-Legal person and 3-Association of
persons. Values can be updated and retrieved by the CS/RD.
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:unsignedInt">
<xs:totalDigits value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="VATNationalNumber">
<xs:restriction base="SingleLineString">
<xs:minLength value="1"/>
<xs:maxLength value="15"/>
<xs:pattern value="\p{IsBasicLatin}+"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>xml.xsd
<?xml version='1.0'?>
<xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace" xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="en">
<xs:attribute name="lang" type="xs:language"/>
<xs:attribute name="space" default="preserve">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="default"/>
<xs:enumeration value="preserve"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="base" type="xs:anyURI"/>
<xs:attributeGroup name="specialAttrs">
<xs:attribute ref="xml:base"/>
<xs:attribute ref="xml:lang"/>
<xs:attribute ref="xml:space"/>
</xs:attributeGroup>
</xs:schema>(second part follows...)(continuing from above post ...)
TestXML.xml
<?xml version="1.0" encoding="utf-8"?>
<env:envelope id="5555" xmlns="urn:publicid:-:DGTAXUD:EORI:CONSULT:1.0" xmlns:env="urn:publicid:-:DGTAXUD:GENERAL:ENVELOPE:1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<env:header name="Version" value="1.0"/>
<env:header name="From" value="EOS-CDCO"/>
<env:header name="Originator" value="BE-EORI"/>
<env:header name="InReplyTo" value="5554"/>
<env:transaction id="1">
<env:header name="InReplyTo" value="1"/>
<env:status category="ok" location="/envelope[@id='5554']/transaction[@id='1']">
<env:status.detail category="info" code="100" location="/envelope[@id='5554']/transaction[@id='1']/app.message[@id='1']">
<env:business.ref>
<full.request>
<eori.record.ref>
<country.code>BE</country.code>
<national.number>123</national.number>
</eori.record.ref>
<consultation.purpose.code>C</consultation.purpose.code>
</full.request>
</env:business.ref>
<env:mmi.message>Ok</env:mmi.message>
</env:status.detail>
</env:status>
<env:app.message id="1">
<eori.record.full.consultation.response>
<full.response.list>
<full.response>
<eori.record.full>
<eori.record.ref>
<country.code>FR</country.code>
<national.number>123</national.number>
</eori.record.ref>
<tc.number.list>
<tc.number>
<country>
<country.code>AA</country.code>
</country>
<national.number>465466</national.number>
</tc.number>
</tc.number.list>
<economic.operator.details>
<full.name>a</full.name>
<short.name>a</short.name>
<establishment.date>19670813</establishment.date>
<person.type.code>1</person.type.code>
<economic.activity.code>1234</economic.activity.code>
<start.date>19670813</start.date>
<expiry.date>19670813</expiry.date>
<publication.ind>0</publication.ind>
</economic.operator.details>
<legal.status.list>
<legal.status>
<legal.status>
<language.code>aa</language.code>
<legal.status.description>status</legal.status.description>
</legal.status>
<validity.period>
<start.date>19670813</start.date>
<end.date>19670813</end.date>
</validity.period>
</legal.status>
</legal.status.list>
<establishment.address.list>
<establishment.address>
<establishment.address>
<language.code>aa</language.code>
<name>a</name>
<street>s</street>
<postcode>p</postcode>
<city>c</city>
<country>
<country.code>AA</country.code>
</country>
</establishment.address>
<validity.period>
<start.date>19670813</start.date>
<end.date>19670813</end.date>
</validity.period>
</establishment.address>
</establishment.address.list>
<vat.list>
<vat>
<country.code>AA</country.code>
<number>74455</number>
</vat>
</vat.list>
<contact.list>
<contact>
<contact>
<phone>+ 123</phone>
<fax>+ 123</fax>
<name.address>
<language.code>aa</language.code>
<full.name>a</full.name>
<short.name>a</short.name>
<street>s</street>
<postcode>p</postcode>
<city>c</city>
<country>
<country.code>AA</country.code>
</country>
</name.address>
</contact>
<validity.period>
<start.date>19670813</start.date>
<end.date>19670813</end.date>
</validity.period>
</contact>
</contact.list>
<aeo.certificate.lifecycle.list>
<aeo.certificate.lifecycle>
<start.date>19670813</start.date>
<end.date>19670813</end.date>
</aeo.certificate.lifecycle>
</aeo.certificate.lifecycle.list>
</eori.record.full>
</full.response>
</full.response.list>
</eori.record.full.consultation.response>
</env:app.message>
</env:transaction>
</env:envelope>Here is the script that created the table and registered the schemas
BEGIN
DBMS_XMLSCHEMA.REGISTERSCHEMA(
SCHEMAURL => 'envelope-consult.xsd',
SCHEMADOC => XDBURITYPE('/public/xsdfiles/EORI/envelope-consult.xsd').getBlob(),
LOCAL => TRUE,
GENTYPES => FALSE,
GENBEAN => FALSE,
GENTABLES => FALSE,
FORCE => FALSE,
CSID => NLS_CHARSET_ID('AL32UTF8'),
OPTIONS => DBMS_XMLSCHEMA.REGISTER_BINARYXML);
END;
BEGIN
DBMS_XMLSCHEMA.REGISTERSCHEMA(
SCHEMAURL => 'EORI-consult.xsd',
SCHEMADOC => XDBURITYPE('/public/xsdfiles/EORI/EORI-consult.xsd').getBlob(),
LOCAL => TRUE,
GENTYPES => FALSE,
GENBEAN => FALSE,
GENTABLES => FALSE,
FORCE => FALSE,
CSID => NLS_CHARSET_ID('AL32UTF8'),
OPTIONS => DBMS_XMLSCHEMA.REGISTER_BINARYXML);
END;
CREATE TABLE TEST_XML_TABLE
ENV_CONSULT SYS.XMLTYPE,
MSG_TSTAMP TIMESTAMP(6) WITH TIME ZONE DEFAULT SYSTIMESTAMP NOT NULL
XMLTYPE COLUMN ENV_CONSULT STORE AS SECUREFILE BINARY XML
( TABLESPACE PARTYMS10_DATA
INDEX(TABLESPACE PARTYMS10_INDEX)
XMLSCHEMA "envelope-consult.xsd" ELEMENT "envelope"
DISALLOW NONSCHEMA
TABLESPACE PARTYMS10_DATA
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING
/And here is the offending statement, together with the reported error
INSERT
INTO TEST_XML_TABLE
VALUES (XDBURITYPE('/public/xmlfiles/EORI/TestXML.xml').getXML(), SYSTIMESTAMP)
COMMIT
ORA-31011: XML parsing failed
ORA-19202: Error occurred in XML processing
LSX-00213: only 0 occurrences of particle "abstract.ref", minimum is 1
Details:
INSERT
INTO TEST_XML_TABLE
VALUES (XDBURITYPE('/public/xmlfiles/EORI/TestXML.xml').getXML(), SYSTIMESTAMP)
Error at line 1
ORA-31011: XML parsing failed
ORA-19202: Error occurred in XML processing
LSX-00213: only 0 occurrences of particle "abstract.ref", minimum is 1I am using 11.1.0.7.0, as seen on
select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production
PL/SQL Release 11.1.0.7.0 - Production
CORE 11.1.0.7.0 Production
TNS for 32-bit Windows: Version 11.1.0.7.0 - Production
NLSRTL Version 11.1.0.7.0 - Production
5 rows selected.Any ideas ? I cannot understand it at all... It seems to relate to the substitutionGroup entries in general, but I can't for the life of me see why :(
Best Regards
Philip -
Sorry to ask you this stupid question ?
can any one tell / guide me about Business Partner types and how can we use this in CRM ?
thanks in advance.
RakeshA business partner can be a person, a group of people, or an organization, representing a business interest.
Person
The categorization of a business partner as a person (for example, a private person), a group or an organization (legal person or part of a legal person, for example, department) is known as the business partner category.
Group
A group is the depiction of a shared living arrangement, a married couple, or an executive board.
When a group is created, the corresponding partner group type must be entered.
Organization
The organization represents units such as a company, a division of a company, a club, or an association.
In addition to a legal person, parts of a legal person can be mapped as a business partner. Organization acts as an umbrella term to depict all conceivable occurrences in daily business activities. In this way, a subsidiary or a purchasing department represents only parts of a legal person.
The business partner category must be defined when creating a new business partner.
A business partner can come into contact with an enterprise in various situations. Depending on which business processes the business partner is involved in; completely different information about the business partner may be needed. For example, for the goods delivery transaction, information about the shipping and delivery conditions is required; for the sales order transaction, delivery dates and payment conditions are relevant.
You can create more than one business partner role for one business partner; general information, such as name, address, and bank details, must be entered only once.
All applications or industry business solutions using the SAP Business Partner function provide special business partner roles.
Each partner role contains various data sets:
· General data
· CRM-specific data
· Relationships -
HI FRIENDS,
CAN ANYONE SEND ME THE ABAP-HR MATERIAL .
THAXS AND REGARDS.
HITESHMaybe this link can be helpfull
http://www.sapdevelopment.co.uk/hr/hr_infotypes2.htm
Have a look at http://www.sap-img.com/human/how-to-create-a-hr-infotype.htm, but have also a look at this thread
https://www.sdn.sap.com/sdn/collaboration.sdn?contenttype=url&content=https%3A//forums.sdn.sap.com/thread.jspa%3FthreadID%3D9945%26messageID%3D63016
found this link probably can be helpful to someone
http://help.sap.com/saphelp_46b/helpdata/en/f7/2fe034ee251f34e10000009b38f83b/frameset.htm
http://sap.ittoolbox.com/groups/technical-functional/sap-hr/how-to-create-z-infotype-in-organizational-management-745603
How to create a HR infotype?
1) Go to Transaction PM01.
2) Enter the custom Infotype number which you want to create (Should be a 4 digit number, start with 9).
3) Select the Employee Infotype radio button.
4) Select the PS Structure Infotype.
5) Click on Create A separate table maintenance window appears
6) Create a PS structure with all the fields you want on the Infotype
7) Save and Activate the PS structure
8) Go back to the initial screen of PM01.
9) Click on All push button. It takes a few moments.
10) Click on Technical Characteristics. Infotype list screen appears
11) Click on Change(pencil) button
12) Select your Infotype and click on Detail (magnifying glass) button
13) Give T591A as subtype table
14) Give T591S as subtype txt tab
15) Give your subtype field as subtype field
16) Save and come back to PM01 initial screen
17) Click on Infotype Characteristics Infotype list screen appears
18) Click on Change (pencil) button
19) Click on New Entries
20) Enter your Infotype number and short text
21) Here we have to set different Infotype Characteristics as per the requirement. (Better open another session with some standard Infotypes infotype characteristics screen and use as the reference to fill yours)
22) Save your entries.
23) Now the Infotype is created and ready to use.
24) If you want to change the layout of the Infotype as per your requirement
25) In the PM01 initial screen Select Screen radio button and give 2000 as the screen name, then click on edit.
26) In the next screen.. Select Layout Editor and click Change.
27) Screen default layout appears here you can design/modify the screen..change the attributes of the fields..etc.
28) Save and activate. (Dont forget to Activate at every level)
InfoSets in the HR Application
You can use SAP Query in HR to report on HR data. Queries are maintained as described in Creating Queries. The special features of queries created for HR are described in Maintaining Queries in the Human Resources Application. The maintenance procedure for HR InfoSets differs from the described procedure inasmuch as HR data fields are grouped together in infotypes.
InfoSet management in SAP Query is also used for InfoSet Query. For further information, see Functions for Managing InfoSets.
If you want to create InfoSets for HR, you can use logical databases PNP, PAP, and PCH (see HR Logical Databases). The database you must use to create your InfoSet depends on the component in which the data you want to report on is stored.
The reports you can execute using InfoSets based on logical databases PNP or PCH are similar, but differ in that they can select different objects. The following table describes the connection between the logical database, and the infotypes you can include in an InfoSet. It also provides you with one or two examples of reports that you can execute using the appropriate InfoSets.
Logical database PNP PCH PAP
Selection of Persons Objects from Personnel Planning Applicants
Infotypes that can be included in the InfoSet Infotypes for
Personnel Administration (0000-0999)
Time Management (2000-2999)
Payroll infotypes
Infotypes for Personnel Planning objects that can be related to persons If the object type is specified:
Infotypes for the object type
Infotypes for objects that can be related to the specified object type
If the object type is not specified:
All infotypes Infotypes for Recruitment (4000-4999)
Some infotypes for Personnel Administration (such as 0001 and 0002)
Customer infotypes
Reporting examples Selection of all persons who participated in a specific business event, output of prices for reserved business events
Selection of all persons assigned to a specific personnel area, output of qualifications held by these persons Selection of all business events held in London in March, output of all persons who participated in these business events
Selection of all positions assigned to a specific organizational unit, output of all persons assigned to the positions Selection of all applicants hired last year to work on special projects, output of addresses for the applicants selected
Creating InfoSets
The maintenance procedure for HR InfoSets differs from the procedure described so far in this section inasmuch as HR data fields are grouped together in infotypes. To set up an InfoSet for the HR application, proceed as follows:
1. On the initial screen for maintaining InfoSets, enter a name for the InfoSet and choose Create.
2. On the next screen, enter a name for the InfoSet and select one of the HR logical databases in accordance with your reporting requirements.
Customer infotypes can be created on all HR logical databases. In each individual case, therefore, you must decide which database to select so that you can report on customer infotypes.
This screen enables you to enter an authorization group. All of the queries that are subsequently created using this InfoSet can only be executed by persons who have this authorization group.
3. Choose .
This takes you to the Infotype Selection for InfoSet .
The logical HR database uses the table APPLICANT. You must declare it in the TABLES statement.
At the GET APPLICANT event, the APPLICANT structure contains the data for an applicant number chosen on the basis of selection screen entries.
The APPLICANT-APLNO field contains the applicant number which is selected for processing.
Only the APPLICANT-APLNO field should be read from the work area of the APPLICANT table. The other fields are intended for internal use only.
2.7 Authorization Checks in Reporting (PA-APP)
Generally, authorization checks in reporting do not differ from those in the transactions. Since data access in reporting is always of the read type, the system checks for a read authorization; the authorization group must be R or *.
In some situations, you may want to use a simplified authorization check when running reports. The object RPABAP is required for the check as well as the object RPORGIN; if these authorizations are available, a simpler and faster check is performed.
If the report cannot read certain applicant data due to lack of authorization, data for these persons is not processed at the GET APPLICANT time point. A note appears at the end of the list stating the number of applicants who were skipped due to lack of authorization.
2.8 Views
Introduction
When evaluating data, we distinguish between the logical and the physical view.
The physical view corresponds to the form in which the infotype data is stored in the HR tables. This data is stored in infotype records with a validity period.
In the logical view, the validity periods of individual fields are determined for several infotype records. For example, for an evaluation, the time period during which an employee worked at a particular job may be important, irrespective of whether a company code, personnel area or cost center change occurred during this time.
Data from several infotypes can also be provided for a specific partial period. When calculating partial payroll periods, it is especially important that data on basic pay, work schedule and cost distribution are provided for the relevant partial period.
These two types of logical views are implemented in the projection and join.
 Join
 Projection
 Join and Projection
 Time-Dependent Control Tables
 Generalization of the View
Join
A join processes records from two or more infotypes. The data from these infotypes is provided for a specific partial period.
 We would like to know in which time period an employee worked at which job and at which address he or she resided during this time.
The following address data is available:
January June Hamburg
June December Munich
The following work center data is available:
January April Programmer
May December Course instructor
If the address and work center data are provided for specific partial periods, the following cases result:
January April Hamburg / programmer
May June Hamburg / course instructor
July December Munich / Course instructor
The ABAP syntax of this join is as follows:
PROVIDE * FROM Pomp
FROM Pnnnn
BETWEEN PN-BEGDA AND PN-ENDDA.
The partial periods for infotypes Pomp and Pnnnn as well as for all other infotypes of the join are defined in the fields BEGDA and ENDDA.
The data of each infotype in the join must be available during the entire validity period of the infotype. The time periods of infotype records may not overlap; therefore, the join may not contain infotypes with time constraint "three".
The time periods of records overlap if an infotype is read without any subtype restrictions. For example, the Address infotype has the subtypes Permanent residence, Temporary residence and Home address.
Time periods will ultimately overlap if all addresses are read. Therefore, you must always select a subtype for a join, and this subtype may not have the time constraint "three".
The program code for the above join for work center and address data is as follows:
REPORT RPABAP03.
TABLES: PERNR.
INFOTYPES: 0001, 0006.
GET PERNR.
PROVIDE * FROM P0001
FROM P0006 BETWEEN PN-BEGDA AND PN-ENDDA
WHERE P0006-SUBTY eq '1'.
WRITE: / PERNR-PERNR, P0001-STELL,
P0006-STRAS, P0006-BEGDA, P0006-ENDDA.
ENDPROVIDE.
Sometimes no data is available for a particular infotype in the selected partial period. Infotype validity periods may not overlap but gaps are permitted.
For example, gaps can occur when personal data is joined with address data:
Personal data
January 1960 - May 1998 Miller
May 1998 - December 1998 Smith
Address data:
January 1998 - December 1998 Hamburg
A join for personal and address data is presented as follows:
January 1960 - December 1997 Miller
January 1998 - April 1998 Miller / Hamburg
May 1998 - December 1998 Smith / Hamburg
Only personal data is available in the first partial period. Since the record does not provide the required information, the join's function of providing data from all associated infotypes has not been fulfilled.
The variables Pnnnn_VALID recognize that only incomplete data is available for a particular partial period.
This variable is formed when the report is run for each Pnnnn infotype included in a join.
If data exists in the partial period for the Pnnnn infotype, the variable Pnnnn_VALID is filled with X.
These variables are evaluated as follows:
REPORT RPDEMO03.
TABLES: PERNR.
INFOTYPES: 0002,
0006.
GET PERNR.
PROVIDE * FROM P0002
FROM P0006 BETWEEN PN-BEGDA AND PN-ENDDA
WHERE P0006-SUBTY = '1'.
IF P0006_VALID EQ 'X'.
WRITE: / PERNR-PERNR,
P0002-BEGDA DD/MM/YYYY,
P0002-ENDDA DD/MM/YYYY,
P0002-NACHN,
P0006-ORT01.
ENDIF.
ENDPROVIDE.
A list is generated only if address data is available. The first partial period, for which only personal data is available, is suppressed.
Projection
All data of an infotype is stored on the database with its period of validity.
When you change one or more fields of an infotype record, the system creates a new record with a new validity period. The date on which you changed the record is the start date of this new record.
Therefore, the data fields that are not affected by the changes contain the same data over several infotype records and validity periods.
From a logical perspective, these fields are valid in all infotype records until they are changed.
When seen from this logical perspective, each field of an infotype has its own validity period.
This is illustrated in the following case:
An employee has worked as a programmer for three years in three different personnel areas.
The following organizational assignment data is available:
January 1992 - December 1992: Programmer /personnel area 1
January 1993 - December 1993: Programmer /personnel area 2
January 1994 - December 1994: Programmer /personnel area 3
If you only require the time period during which an employee performs a specific job and not his or her personnel area for an evaluation, the following applies:
January 1996 - December 1998: Programmer
The physical view has three infotype records, the logical view one.
To create meaningful evaluations and avoid redundancies, create logical views for infotype records.
Select the infotype fields that are important for the evaluation and disregard the others.
In the above example, the data in the other fields is invalid for the evaluation since it is unknown which personnel area the employee belonged to from 1996 - 1998.
This view of the validity period of a group of infotype fields is known as projection.
The program code for the projection is:
PROVIDE FROM Pnnnn
BETWEEN PN-BEGDA AND PN-ENDDA .
The infotype data for a projection must be available throughout the entire validity period. If the time periods of certain infotype records overlap, the data cannot be clearly assigned to one period.
Therefore, you should not use projections for infotype records with time constraint three. The report for the above projection is:
REPORT RPABAP04.
TABLES: PERNR.
INFOTYPES: 0001.
GET PERNR.
PROVIDE STELL FROM P0001 BETWEEN PN-BEGDA AND PN-ENDDA.
WRITE: / PERNR-PERNR, P0001-STELL, P0001-BEGDA,
P0001-ENDDA.
ENDPROVIDE .
The logical validity for the activity period is included in the infotype BEGDA and ENDDA fields.
Join and Projection
You can combine the two logical views of infotype data, the join and the projection.
We read the data from several infotypes and create new partial periods. We select the infotype fields that are important for the evaluation and combine these partial periods again.
The following example illustrates this.
An employee works as a programmer in the current year and marries in May. Her name does not change.
Organizational assignment:
January - December Programmer
Personal data:
January - April Donna Debug - single
May - December Donna Debug - married
When the data from both infotypes is read concurrently, the result is:
January - April Donna Debug - single /
programmer
May - December Donna Debug - married /
programmer
Since we can disregard her marital status in the evaluation, we project on her first and last names:
January - December Donna Debug / programmer
The following report exemplifies the above case:
REPORT RPDEMO04.
TABLES: PERNR.
INFOTYPES: 0001,
0002.
GET PERNR.
PROVIDE STELL FROM P0001
NACHN VORNA FROM P0002
BETWEEN PN-BEGDA AND PN-ENDDA
IF P0001_VALID = 'X'.
WRITE: / P0002-NACHN, P0002-VORNA,
P0001-BEGDA DD/MM/YYYY,
P0001-ENDDA DD/MM/YYYY,
P0001-STELL.
ENDIF.
ENDPROVIDE.
This report combines the associated validity periods and provides the data of relevant infotype fields for a specific period.
 Fields which are not accessed have their initial value in the projection.
Provision of data for a specific partial period is especially important for partial period factoring in payroll.
If an employee's basic pay or the cost distribution changes during the payroll period, you must calculate the salary proportionately for the resulting partial periods.
However, if the payroll administrator of the organizational unit changes, this has no effect on payroll.
By linking a join and a projection, you can read the master data for a specific partial period.
Time-Dependent Control Tables
Infotype data is generally coded as a key (for example, infotype P0006, address type 1 = permanent residence) to allow fast data entry and space-saving storage. When you process infotypes, the texts or attributes of the keys are read from the relevant control tables.
In many control tables, storage of data is time-dependent and therefore assigned a validity period.
In HR, this applies to the following areas:
Work schedules
Pay scale structures
Wage types
Wage type valuation
Bank data
Positions
Payee codes
When you read the data for an infotype key from time-dependent control tables, you must determine which record is valid in the specified validity period.
If you use a transaction to process an infotype, the system reads the table record which is valid on the start date.
Generalization of the View
You can use the logical view to edit and output data according to user specifications.
The special feature of HR views is the time dependency of the data. Personnel data is almost always related to specific validity periods. A HR view provides data for specific time intervals.
In general terms, a HR view is a logical perspective of interval-dependent internal tables.
See also:
Processing All Infotype Records (PA-PAD)
Processing All Infotype Records (PA-APP)
Processing a Specific Infotype Record (PA-PAD)
Processing a Specific Infotype Record (PA-APP)
3 Import/Export Files in HR
The following sections describe the purpose of files PCL1 and PCL2 and explains how to access them.
Files PCL1, PCL2, PCL3 and PCL4
Storing Data in PCLn Files
PCLn Buffer
Cluster Directory Manager
3.1 Files PCL1, PCL2, PCL3 and PCL4
Which information is stored in the files?
File PCL1 is the basis for the HR work area data. It contains information from the time data recording, for example, incentive wage time tickets or infotype supplement texts.
File PCL2 contains derived information, for example, payroll results. It also contains all generated payroll schemas.
File PCL3 contains applicant data.
File PCL4 contains the change documents for HR master data and recruitment.
The structure of PCLn files corresponds to that of the INDX file which you may be familiar with from other applications. The structure of all PCLn files (n = 1, 2, 3, and 4) is identical.
Structure of Files
Like in almost all SAP files, the key element with the highest priority is the client; data within a client is grouped according to basic relations (field PCLn-RELID).
The type of basic relation is known as a cluster and characterizes the stored data according to the type, for example, cluster RX contains the payroll result for country X (from table T500L) and cluster TE contains the trip costs data.
Depending on the cluster, the structure of PCLn-SRTFD is defined in a field string xx-KEY, which is defined in an include RPCnxxy0.
Naming conventions
n = 1, 2, 3, or 4 (for PCL1, PCL2, PCL3, or PCL4)
xx = for the cluster
y = 0 for international clusters
y = country grouping according to T500L for national clusters
The personnel number is usually the first component of xx-KEY.
Importing and Exporting Data
The import/export files PCLn are managed with the ABAP/4® commands IMPORT and EXPORT . These commands store objects such as fields, field strings, or internal tables on the database, or read these from the database. Data is read from and written to the database using a unique key( xx-Key).
Please note that the RMAC macros RP-IMP-Cn-xx and RP-EXP-Cn-xx are provided for importing and exporting data. Only these macros should be used.
See also Macro Modules
3.2 Storing Data in PCLn Files
Data from the different HR application areas is stored in data clusters in PCLn files (n = 1, 2, 3, or 4).
This collection of data objects can consist of:
Fields used within reports
Field strings
Internal tables
The structure of the PCLn files provides a framework for the individual application areas.
Each application area must have a two-character cluster name (relation ID). It must also have a key structure; 40 bytes of the SRTFD field are available for this structure.
When a record is exported to the PCLn file, the cluster ID is written to the RELID field and the key value to the SRTFD field.
Naming convention for includes when defining clusters:
RPCnxxy0 n = 1, 2, 3 or 4 (for PCL1, PCL2, PCL3, PCL4)
xx = cluster ID
y = country indicator
Description of Cluster Data using Cluster RX as an Example
The data definition is stored in the include RPC2RX00 in accordance with the above naming conventions.
Structure of cluster key:
Data: BEGIN OF RX-KEY.
INCLUDE STRUCTURE PC200.
DATA: END OF RX-KEY.
The DDIC structure PC200 contains the fields PERNR (personnel number) and SEQNO (sequential number).
The data definition of the cluster also contains other internal tables.
For a list of available data clusters, refer to the domain description in the Data Dictionary.
xx Key
The xx key name is dependent on the cluster.
The RX KEY is used for all Rx and Xx clusters. In all other cases, the name of the xx key corresponds to that of the cluster.
Cluster xx Key
RA RX-KEY
B1 B1-KEY
G3 G3-KEY
XA RX-KEY
3.3 PCLn Buffer
To keep the number of database accesses to a minimum, import and export data is stored in the main memory buffer. Buffer management routines ensure that exported data can be stored in the PCLn files.
The following two examples illustrate which problems can occur without a buffer.
Retroactive accounting of payroll results
Starting payroll in the test mode
Retroactive Accounting of Payroll Results
In February 1998, a retroactive accounting run is executed for January.
FOR PERIOD 199801 IN PERIOD 199802
The payroll results for January are recalculated and then written directly to the database.
Result:
The database now contains the results of the following payroll periods.
FOR-PERIOD 199801 IN-PERIOD 199802
FOR-PERIOD 199801 IN-PERIOD 199801
Payroll is then run for February.
FOR-PERIOD 199802 IN-PERIOD 199802
If problems should arise during the payroll run for this period, the February record is not stored on the database.
Result:
The current January record on the database is:
FOR-PERIOD 199801 IN-PERIOD 199802
This problem does not arise if you use the buffer since all data of a transaction is always updated collectively. In the above example, the recalculated January result would be stored in the buffer and, if the payroll run for February were terminated prematurely, the database would not be updated.
The current January record on the database would thus be:
FOR-PERIOD 199801 IN-PERIOD 199802
Starting Payroll in the Test Mode
In a test run, the database is not updated. Since the payroll results from the previous period are used as the basis for calculating the results of the following period, the results of the actual payroll run would differ from those of the test run, if this test run were executed over several periods.
The use of the buffer enables trouble-free access to the required results for the previous period.
What is required for exporting/importing data to/from the PCLn files using the buffer?
 The following includes contain the data definition for the buffer. They must be included in the report that writes the data to or reads the data from the database.
RPPPXD00
RPPPXD10
 Include RPPPXD10 must be in the common part BUFFER .
Include RPPPXM00, which contains the buffer management routines, is also required.
The macros for importing and exporting data must comply with the following naming convention:
Naming Convention for EXPORT/ IMPORT Macros:
RP-aaa-Cn-xy
where aaa = IMP / EXP, n=1 for PCL1, 2 for PCL2, 3 for PCL3, 4 or PCL4
and xy = cluster name.
This guarantees consistency between the export and import of data and also ensures that all exported objects are imported again.
Export Using the Data Buffer
When macros are used for exporting, records are written to a main memory buffer and not directly to the database. When the program run has been completed, the records in the buffer are stored in the appropriate PCLn database.
Import Using the Data Buffer
When the macros are used to import data, the data records are not read directly from file PCLn. Instead, the system checks the buffer directory to see whether the main memory already contains a record with the same key. If this is not the case, the record is read from PCLn to the buffer and then retrieved from the buffer for the report.
If the import is successful, the return code RP-IMP-xy-SUBRC = 0 is set. When data is read from the buffer, the system carries out a check for cluster authorization. Standard import programs follow the naming convention RPCLSTxy (xy = cluster name).
 report rpttcdmg.
tables:
pernr,
pcl1,
pcl2.
include rpppxd00. "buffer definitions
data: begin of common part 'BUFFER'.
include rpppxd10. "PCLx buffer
data: end of common part.
data: begin of common part 'CLUSTER_DIRECTORY'.
include rpc2cd00. " "cluster directory definitions
data: end of common part.
include rpc2rdd0.
get pernr.
rp-init-buffer. "reset buffer
cd-key-pernr = pernr-pernr.
rp-imp-c2-cd. "read cluster CD from
buffer/DB
perform cd_manager using ... .
alternative: call function rp_evaluation_periods...
rx-key-pernr = pernr-pernr.
rx-key-seqno = rgdir-seqnr.
rp-imp-c2-rd. "read cluster RD from
buffer/DB
rp-exp-c2-rd. "update cluster RD in buffer
perform prepare_update using 'V'. "update database (DB)
Subroutines CD manager and Cluster buffer
include rpcmgr00. "Cluster Directory Manager
include rpppxm00. "module pcl1(2)-buffer
3.4 Cluster Directory
Finding Payroll Results for a Specific Query
Payroll results are stored in cluster Rx of the PCL2.
The cluster key is non-mnemonic. It contains the PERNR (personnel number) and SEQNO (sequential number) fields.
The internal table RGDIR contains a directory entry for each payroll result. This entry is a sequential number (RGDIR-SEQNR) which uniquely identifies the payroll result.
Payroll results can only be imported if the payroll cluster key contains the personnel number and sequential number.
Before you can import a payroll record, you must select the entry in the RGDIR on the basis of existing data such as for-period, for-payroll area, for-payroll category, in-period, in-payroll area, in-payroll category, and so on, in order to determine the sequential number.
You will probably always have the same queries when importing payroll records. For example, "Which payroll results (original and retroactively accounted records) were written for a specific payroll run (defined by IN payroll category, IN payroll area, IN period)"?
There are standard modules that can be used. It is advantageous to use the standard modules rather than self-programmed solutions because no program modifications will be required if the payroll directory changes. The modules are described in the following section:
Function Modules for Selecting Payroll Results
3.5 Function Modules for Selecting Payroll Results
The employees payroll directory is always transferred to the function modules using the table RGDIR.
The modules then transfer the payroll records which satisfy the specified selection criteria using a table whose type corresponds to that of the RGDIR but which has a different name. The selection parameters differ according to the function of the module. For more information, read the module documentation.
All module names begin with CD_.
Function Module: CD_EVALUATION_PERIODS
Function Module: CD_READ_PREVIOUS
Function Module: CD_READ_PREVIOUS_ORIGINAL
Other Modules for the Payroll Cluster
Sample Report
Function Module: CD_EVALUATION_PERIODS
This module transfers the payroll results to a payroll run as A records (current). It also transfers the accompanying P records (previous).
This is the module most frequently used in evaluation programs.
Table contents before the function module is accessed:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY PAYID INPTY INPID
00001 01.1996 01.01.96 01.15.96 01.1996 01.01.96 01.15.96
00002 01.1996 01.01.96 01.15.96 01.16.96 01.16.96 B 0
00003 01.16.96 01.16.96 01.16.96 01.16.96 01.16.96 B 0 B 0
00004 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 0 A 0
00005 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 1 A 1
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 01.15.96
00008 03.1996 01.16.96 01.31.96 03.1996 01.01.96 02.15.96
The following parameters are transferred:
- BONUS_DATE = '00000000'
- INPER_MODIF = '02'
- INPER = '199803'
- PAYTY = ' '
- PAYID = ' '
Result:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY INPTY INPID SRTZA
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96 P
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96 A
00008 03.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96 A
Explanation of individual fields
Function Module: CD_READ_PREVIOUS
This module transfers a previous payroll record for a payroll record; this is the newest record for the payroll period (or daily payroll run) which was written before the transferred payroll record and contains the same FOR data as the transferring record.
Table contents before the function module is accessed:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY PAYID
00001 01.1996 01.01.96 01.15.96 01.1996 01.01.96 01.15.96
00002 01.1996 01.01.96 01.15.96 01.16.96 01.16.96
00003 01.16.96 01.16.96 01.16.96 01.16.96 01.16.96 B 0
00004 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 0
00005 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 1
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
00008 03.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
The following parameters are transferred:
- Record with SEQNR '00007'
Result:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY SRTZA
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96 P
Explanation of individual fields
Function Module: CD_READ_PREVIOUS_ORIGINAL
This module reads the previous original payroll result.
Table contents before the function module is accessed:
SEQNR FPPER FPBEG FPEND INPER IPBEG IIPEND BONDT PAYTY PAYID
00001 01.1996 01.01.96 01.15.96 01.1996 01.01.96 01.15.96
00002 01.1996 01.01.96 01.15.96 01.16.96 01.16.96
00003 01.16.96 01.16.96 01.16.96 01.16.96 01.16.96 B 0
00004 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 0
00005 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 1
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
00008 03.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
The following parameters are transferred:
- Record with SEQNR '00008'
Result:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY SRTZA
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.3196 P
Explanation of individual fields
3.6 Other Modules for the Payroll Cluster
Modules which derive information from the payroll cluster are available in addition to the modules for payroll result selection.
1. CD_RETROCALC_PERIOD
This module differentiates between original payroll records and retroactive accounting records.
Table contents before the function module is accessed:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY PAYID
00001 01.1996 01.01.96 01.15.96 01.1996 01.01.96 01.15.96
00002 01.1996 01.01.96 01.15.96 01.16.96 01.16.96
00003 01.16.96 01.16.96 01.16.96 01.16.96 01.16.96 B 0
00004 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 0
00005 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 1
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
00008 03.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
The following parameters are transferred:
- Record with SEQNR '00008'
Result:
- CALCD = ' '
Explanation of individual fields
2. CD_PAYROLL_UNTIL
This module reads the RGDIR for the date up to which the regular payroll run was executed for an employee.
3. CD_HIGHEST_PAYDT
This module reads the most recent check date for an employee from the RGDIR.
4. CD_GET_INFO
This module provides information (most recent check date, accounted to date) for a particular personnel number.
3.7 Explanation of Individual Fields
For-Information
The FPPER, FPBEG, FPEND, BONDT, PAYTY, PAYID, ABKRS, PERMO, PAYDT, JUPER fields contain information on the period for which payroll is run.
In-Information
The INPER, IPEND, INPTY, INPID, IABKRS, IPERM fields contain information on the period in which payroll is run.
SEQNR
The field is used as a key to uniquely identify the payroll record.
This field also defines the sequence of payroll results (history).
Control Indicator (SRTZA)
Control indicator Meaning
a Current
p Previous
o Old
 For more information, see the online documentation for the individual function modules.
3.8 Sample Report
REPORT RPTTMWBS.
DATA: RGDIR LIKE PC261 OCCURS 0 WITH HEADER LINE.
DATA: EVPDIR LIKE RGDIR OCCURS 0 WITH HEADER LINE.
DATA: PREVIOUS_RESULTS LIKE RGDIR OCCURS 0 WITH HEADER LINE.
DATA: CALCD TYPE C.
DATA: IN_ENTRY LIKE PC261.
DATA: OUT_ENTRY LIKE PC261.
INCLUDE RPCCCD09.
CALL FUNCTION 'CU_READ_RGDIR'
EXPORTING
PERSNR = '00021218'
TABLES IN_RGDIR = RGDIR
EXCEPTIONS
NO_RECORD_FOUND = 1
OTHERS = 2.
Read RGDIR
CALL FUNCTION 'CD_EVALUATION_PERIODS'
EXPORTING
BONUS_DATE = '00000000'
INPER_MODIF = '02'
INPER = '199603'
PAY_TYPE = CD_C-REGULAR
PAY_IDENT = ' '
TABLES
RGDIR = RGDIR
EVPDIR = EVPDIR
IABKRS =
EXCEPTIONS
NO_RECORD_FOUND = 1
OTHERS = 2.
output:
00006
00007
00008
Read regular payroll results for January
A results (original result plus retroactive calculations)
and P results
LOOP AT EVPDIR WHERE SRTZA = CD_C-ACTUAL.
Only current results (00007 and 00008)
CALL FUNCTION 'CD_RETROCALC_PERIOD'
EXPORTING
ENTRY = EVPDIR
IMPORTING
CALCD = CALCD
EXCEPTIONS
OTHERS = 1.
Determine, whether original result
CHECK CALCD = ' '.
Special processing: Only the original period
March is processed (seqnr 00008).
IN_ENTRY = EVPDIR.
CALL FUNCTION 'CD_READ_PREVIOUS_ORIGINAL'
EXPORTING
IN_RECORD = IN_ENTRY
IMPORTING
OUT_RECORD = OUT_ENTRY
TABLES
RGDIR = RGDIR
EXCEPTIONS
OTHERS = 1.
out_entry now contains the previous results
Input 00008 ----> Output 00006
ENDLOOP.
LOOP AT EVPDIR WHERE SRTZA = CD_C-ACTUAL.
IN_ENTRY = EVPDIR.
CALL FUNCTION 'CD_READ_PREVIOUS'
EXPORTING
IN_RECORD = IN_ENTRY
TABLES
RGDIR = RGDIR
OUT_RGDIR = PREVIOUS_RESULTS
EXCEPTIONS
NO_RECORD_FOUND = 1
OTHERS = 2.
Input 00007 ---> 00006
Input 00008 ---> no record found
Output structure is a table, since there can be
several previous results: for example, if legal person
changes, and is retroactively deleted
ENDLOOP
4 Specific Commands
The following sections describe the different specific commands in HR.
Function modules in HR
Macro modules
4.1 Function Modules in HR
Function modules are program modules which have a defined interface and allow type testing of parameters.
They are managed with transaction SE37 and combined to function groups according to relevant criteria. You can access this transaction under Tools  ABAP Workbench  Function Builder.
The HR function groups use the naming convention RPxx or HRxx where xx is an identifier of your choice.
You can use the SHOW FUNCTION * editor command to branch from report processing to function module display.
4.2 Macro Modules
Definition
An module that can be called within an ABAP program.
Use
Like subprograms and function modules, macro modules are a means of presenting programs in modular form. Macro modules (macros) are used often in the Human Resources application component (HR).
Defining and Calling Modules
Two options are provided:
Macros can be defined in reports or includes using the ABAP command DEFINE. A macro can be used within a report or within an include. If a macro is used in a report, and the macro is defined in an include with the DEFINE command, the include must be integrated.
 Macros have the following advantages:
If a macro is changed, each report using this macro is automatically regenerated when it is executed.
Macros can also be defined as RMAC macros. The source code of these modules is stored in the function section of the control table TRMAC (Macros in ABAP Programs). The coding is grouped under a specific name in the table key.
According to conventions, the first two letters of the name must stand for the application. The rest of the name is freely definable.
 Customer-specific RMAC modules should begin with a special character.
The macros defined in the control table TRMAC can be used by all reports.
 When you change a RMAC macro in the table TRMAC, the reports that use this macro are not regenerated automatically. You must regenerate them manually.
The following section includes a list of programming utilities for the logical databases PNP and PAP.
5 Utilities in HR
The following utilities are available.
General Utilities
Report Meaning
RPUACG00 Code generation / authorization check
RPUAUD00 Infotype auditing
Programming Utilities
Report Meaning
RPINCL10 String search in reports
Cluster Utilities
Report Meaning
RPCLSTyy Display cluster for PCLx (yy = RELID)
RPUPxD00 Delete cluster for PCLx (individual data records)
RPUPxD10 Delete cluster for PCLx (several data records)
6 References:
Different parts of the document has been prepared with the help of articles available on Internet
Following websites are referred :
a). http://help.sap.com
b). http://sapfans.com
c). http://www.sap-basis-abap.com/saphr.htm -
What is the Use of recipient type ? is it mandatary field in vendor master ? is it assign in vendor master? if iam not assign recipient type what is effect?What areas is the effect from the recipient type?
hello
Recipient Type
A system object that you use to classify payment recipients as legal persons or natural persons, for the purposes of withholding tax reporting.
Use
Customizing
Define the recipient types in Customizing for Financial Accounting (FI), by choosing Financial Accounting Global Settings ® Withholding Tax ® Extended Withholding Tax ® Basic Settings ® Check Recipient Types.
For each withholding tax type, create two entries as follows:
Recipient Type
CO
Companies
OT
Others
Country Version India comes with sample settings for the sample withholding tax types provided.
Master Data
Enter the recipient type in each vendor master and each customer master.
Reporting
The TDS returns separate the information about taxes withheld on legal persons and on natural persons.
regards -
Hi,
i learned ABAP HR can any body help me materials regardign this
any body having specifications regardsing ABAP HR it will be more helpfull to this id <b><REMOVED BY MODERATOR></b>
Message was edited by:
Alvaro Tejada GalindoMaybe this link can be helpfull
http://www.sapdevelopment.co.uk/hr/hr_infotypes2.htm
Have a look at http://www.sap-img.com/human/how-to-create-a-hr-infotype.htm, but have also a look at this thread
https://www.sdn.sap.com/sdn/collaboration.sdn?contenttype=url&content=https%3A//forums.sdn.sap.com/thread.jspa%3FthreadID%3D9945%26messageID%3D63016
found this link probably can be helpful to someone
http://help.sap.com/saphelp_46b/helpdata/en/f7/2fe034ee251f34e10000009b38f83b/frameset.htm
http://sap.ittoolbox.com/groups/technical-functional/sap-hr/how-to-create-z-infotype-in-organizational-management-745603
How to create a HR infotype?
1) Go to Transaction PM01.
2) Enter the custom Infotype number which you want to create (Should be a 4 digit number, start with 9).
3) Select the Employee Infotype radio button.
4) Select the PS Structure Infotype.
5) Click on Create A separate table maintenance window appears
6) Create a PS structure with all the fields you want on the Infotype
7) Save and Activate the PS structure
8) Go back to the initial screen of PM01.
9) Click on All push button. It takes a few moments.
10) Click on Technical Characteristics. Infotype list screen appears
11) Click on Change(pencil) button
12) Select your Infotype and click on Detail (magnifying glass) button
13) Give T591A as subtype table
14) Give T591S as subtype txt tab
15) Give your subtype field as subtype field
16) Save and come back to PM01 initial screen
17) Click on Infotype Characteristics Infotype list screen appears
18) Click on Change (pencil) button
19) Click on New Entries
20) Enter your Infotype number and short text
21) Here we have to set different Infotype Characteristics as per the requirement. (Better open another session with some standard Infotypes infotype characteristics screen and use as the reference to fill yours)
22) Save your entries.
23) Now the Infotype is created and ready to use.
24) If you want to change the layout of the Infotype as per your requirement
25) In the PM01 initial screen Select Screen radio button and give 2000 as the screen name, then click on edit.
26) In the next screen.. Select Layout Editor and click Change.
27) Screen default layout appears here you can design/modify the screen..change the attributes of the fields..etc.
28) Save and activate. (Dont forget to Activate at every level)
InfoSets in the HR Application
You can use SAP Query in HR to report on HR data. Queries are maintained as described in Creating Queries. The special features of queries created for HR are described in Maintaining Queries in the Human Resources Application. The maintenance procedure for HR InfoSets differs from the described procedure inasmuch as HR data fields are grouped together in infotypes.
InfoSet management in SAP Query is also used for InfoSet Query. For further information, see Functions for Managing InfoSets.
If you want to create InfoSets for HR, you can use logical databases PNP, PAP, and PCH (see HR Logical Databases). The database you must use to create your InfoSet depends on the component in which the data you want to report on is stored.
The reports you can execute using InfoSets based on logical databases PNP or PCH are similar, but differ in that they can select different objects. The following table describes the connection between the logical database, and the infotypes you can include in an InfoSet. It also provides you with one or two examples of reports that you can execute using the appropriate InfoSets.
Logical database PNP PCH PAP
Selection of Persons Objects from Personnel Planning Applicants
Infotypes that can be included in the InfoSet Infotypes for
Personnel Administration (0000-0999)
Time Management (2000-2999)
Payroll infotypes
Infotypes for Personnel Planning objects that can be related to persons If the object type is specified:
Infotypes for the object type
Infotypes for objects that can be related to the specified object type
If the object type is not specified:
All infotypes Infotypes for Recruitment (4000-4999)
Some infotypes for Personnel Administration (such as 0001 and 0002)
Customer infotypes
Reporting examples Selection of all persons who participated in a specific business event, output of prices for reserved business events
Selection of all persons assigned to a specific personnel area, output of qualifications held by these persons Selection of all business events held in London in March, output of all persons who participated in these business events
Selection of all positions assigned to a specific organizational unit, output of all persons assigned to the positions Selection of all applicants hired last year to work on special projects, output of addresses for the applicants selected
Creating InfoSets
The maintenance procedure for HR InfoSets differs from the procedure described so far in this section inasmuch as HR data fields are grouped together in infotypes. To set up an InfoSet for the HR application, proceed as follows:
1. On the initial screen for maintaining InfoSets, enter a name for the InfoSet and choose Create.
2. On the next screen, enter a name for the InfoSet and select one of the HR logical databases in accordance with your reporting requirements.
Customer infotypes can be created on all HR logical databases. In each individual case, therefore, you must decide which database to select so that you can report on customer infotypes.
This screen enables you to enter an authorization group. All of the queries that are subsequently created using this InfoSet can only be executed by persons who have this authorization group.
3. Choose .
This takes you to the Infotype Selection for InfoSet .
The logical HR database uses the table APPLICANT. You must declare it in the TABLES statement.
At the GET APPLICANT event, the APPLICANT structure contains the data for an applicant number chosen on the basis of selection screen entries.
The APPLICANT-APLNO field contains the applicant number which is selected for processing.
Only the APPLICANT-APLNO field should be read from the work area of the APPLICANT table. The other fields are intended for internal use only.
2.7 Authorization Checks in Reporting (PA-APP)
Generally, authorization checks in reporting do not differ from those in the transactions. Since data access in reporting is always of the read type, the system checks for a read authorization; the authorization group must be R or *.
In some situations, you may want to use a simplified authorization check when running reports. The object RPABAP is required for the check as well as the object RPORGIN; if these authorizations are available, a simpler and faster check is performed.
If the report cannot read certain applicant data due to lack of authorization, data for these persons is not processed at the GET APPLICANT time point. A note appears at the end of the list stating the number of applicants who were skipped due to lack of authorization.
2.8 Views
Introduction
When evaluating data, we distinguish between the logical and the physical view.
The physical view corresponds to the form in which the infotype data is stored in the HR tables. This data is stored in infotype records with a validity period.
In the logical view, the validity periods of individual fields are determined for several infotype records. For example, for an evaluation, the time period during which an employee worked at a particular job may be important, irrespective of whether a company code, personnel area or cost center change occurred during this time.
Data from several infotypes can also be provided for a specific partial period. When calculating partial payroll periods, it is especially important that data on basic pay, work schedule and cost distribution are provided for the relevant partial period.
These two types of logical views are implemented in the projection and join.
 Join
 Projection
 Join and Projection
 Time-Dependent Control Tables
 Generalization of the View
Join
A join processes records from two or more infotypes. The data from these infotypes is provided for a specific partial period.
 We would like to know in which time period an employee worked at which job and at which address he or she resided during this time.
The following address data is available:
January June Hamburg
June December Munich
The following work center data is available:
January April Programmer
May December Course instructor
If the address and work center data are provided for specific partial periods, the following cases result:
January April Hamburg / programmer
May June Hamburg / course instructor
July December Munich / Course instructor
The ABAP syntax of this join is as follows:
PROVIDE * FROM Pomp
FROM Pnnnn
BETWEEN PN-BEGDA AND PN-ENDDA.
The partial periods for infotypes Pomp and Pnnnn as well as for all other infotypes of the join are defined in the fields BEGDA and ENDDA.
The data of each infotype in the join must be available during the entire validity period of the infotype. The time periods of infotype records may not overlap; therefore, the join may not contain infotypes with time constraint "three".
The time periods of records overlap if an infotype is read without any subtype restrictions. For example, the Address infotype has the subtypes Permanent residence, Temporary residence and Home address.
Time periods will ultimately overlap if all addresses are read. Therefore, you must always select a subtype for a join, and this subtype may not have the time constraint "three".
The program code for the above join for work center and address data is as follows:
REPORT RPABAP03.
TABLES: PERNR.
INFOTYPES: 0001, 0006.
GET PERNR.
PROVIDE * FROM P0001
FROM P0006 BETWEEN PN-BEGDA AND PN-ENDDA
WHERE P0006-SUBTY eq '1'.
WRITE: / PERNR-PERNR, P0001-STELL,
P0006-STRAS, P0006-BEGDA, P0006-ENDDA.
ENDPROVIDE.
Sometimes no data is available for a particular infotype in the selected partial period. Infotype validity periods may not overlap but gaps are permitted.
For example, gaps can occur when personal data is joined with address data:
Personal data
January 1960 - May 1998 Miller
May 1998 - December 1998 Smith
Address data:
January 1998 - December 1998 Hamburg
A join for personal and address data is presented as follows:
January 1960 - December 1997 Miller
January 1998 - April 1998 Miller / Hamburg
May 1998 - December 1998 Smith / Hamburg
Only personal data is available in the first partial period. Since the record does not provide the required information, the join's function of providing data from all associated infotypes has not been fulfilled.
The variables Pnnnn_VALID recognize that only incomplete data is available for a particular partial period.
This variable is formed when the report is run for each Pnnnn infotype included in a join.
If data exists in the partial period for the Pnnnn infotype, the variable Pnnnn_VALID is filled with X.
These variables are evaluated as follows:
REPORT RPDEMO03.
TABLES: PERNR.
INFOTYPES: 0002,
0006.
GET PERNR.
PROVIDE * FROM P0002
FROM P0006 BETWEEN PN-BEGDA AND PN-ENDDA
WHERE P0006-SUBTY = '1'.
IF P0006_VALID EQ 'X'.
WRITE: / PERNR-PERNR,
P0002-BEGDA DD/MM/YYYY,
P0002-ENDDA DD/MM/YYYY,
P0002-NACHN,
P0006-ORT01.
ENDIF.
ENDPROVIDE.
A list is generated only if address data is available. The first partial period, for which only personal data is available, is suppressed.
Projection
All data of an infotype is stored on the database with its period of validity.
When you change one or more fields of an infotype record, the system creates a new record with a new validity period. The date on which you changed the record is the start date of this new record.
Therefore, the data fields that are not affected by the changes contain the same data over several infotype records and validity periods.
From a logical perspective, these fields are valid in all infotype records until they are changed.
When seen from this logical perspective, each field of an infotype has its own validity period.
This is illustrated in the following case:
An employee has worked as a programmer for three years in three different personnel areas.
The following organizational assignment data is available:
January 1992 - December 1992: Programmer /personnel area 1
January 1993 - December 1993: Programmer /personnel area 2
January 1994 - December 1994: Programmer /personnel area 3
If you only require the time period during which an employee performs a specific job and not his or her personnel area for an evaluation, the following applies:
January 1996 - December 1998: Programmer
The physical view has three infotype records, the logical view one.
To create meaningful evaluations and avoid redundancies, create logical views for infotype records.
Select the infotype fields that are important for the evaluation and disregard the others.
In the above example, the data in the other fields is invalid for the evaluation since it is unknown which personnel area the employee belonged to from 1996 - 1998.
This view of the validity period of a group of infotype fields is known as projection.
The program code for the projection is:
PROVIDE FROM Pnnnn
BETWEEN PN-BEGDA AND PN-ENDDA .
The infotype data for a projection must be available throughout the entire validity period. If the time periods of certain infotype records overlap, the data cannot be clearly assigned to one period.
Therefore, you should not use projections for infotype records with time constraint three. The report for the above projection is:
REPORT RPABAP04.
TABLES: PERNR.
INFOTYPES: 0001.
GET PERNR.
PROVIDE STELL FROM P0001 BETWEEN PN-BEGDA AND PN-ENDDA.
WRITE: / PERNR-PERNR, P0001-STELL, P0001-BEGDA,
P0001-ENDDA.
ENDPROVIDE .
The logical validity for the activity period is included in the infotype BEGDA and ENDDA fields.
Join and Projection
You can combine the two logical views of infotype data, the join and the projection.
We read the data from several infotypes and create new partial periods. We select the infotype fields that are important for the evaluation and combine these partial periods again.
The following example illustrates this.
An employee works as a programmer in the current year and marries in May. Her name does not change.
Organizational assignment:
January - December Programmer
Personal data:
January - April Donna Debug - single
May - December Donna Debug - married
When the data from both infotypes is read concurrently, the result is:
January - April Donna Debug - single /
programmer
May - December Donna Debug - married /
programmer
Since we can disregard her marital status in the evaluation, we project on her first and last names:
January - December Donna Debug / programmer
The following report exemplifies the above case:
REPORT RPDEMO04.
TABLES: PERNR.
INFOTYPES: 0001,
0002.
GET PERNR.
PROVIDE STELL FROM P0001
NACHN VORNA FROM P0002
BETWEEN PN-BEGDA AND PN-ENDDA
IF P0001_VALID = 'X'.
WRITE: / P0002-NACHN, P0002-VORNA,
P0001-BEGDA DD/MM/YYYY,
P0001-ENDDA DD/MM/YYYY,
P0001-STELL.
ENDIF.
ENDPROVIDE.
This report combines the associated validity periods and provides the data of relevant infotype fields for a specific period.
 Fields which are not accessed have their initial value in the projection.
Provision of data for a specific partial period is especially important for partial period factoring in payroll.
If an employee's basic pay or the cost distribution changes during the payroll period, you must calculate the salary proportionately for the resulting partial periods.
However, if the payroll administrator of the organizational unit changes, this has no effect on payroll.
By linking a join and a projection, you can read the master data for a specific partial period.
Time-Dependent Control Tables
Infotype data is generally coded as a key (for example, infotype P0006, address type 1 = permanent residence) to allow fast data entry and space-saving storage. When you process infotypes, the texts or attributes of the keys are read from the relevant control tables.
In many control tables, storage of data is time-dependent and therefore assigned a validity period.
In HR, this applies to the following areas:
Work schedules
Pay scale structures
Wage types
Wage type valuation
Bank data
Positions
Payee codes
When you read the data for an infotype key from time-dependent control tables, you must determine which record is valid in the specified validity period.
If you use a transaction to process an infotype, the system reads the table record which is valid on the start date.
Generalization of the View
You can use the logical view to edit and output data according to user specifications.
The special feature of HR views is the time dependency of the data. Personnel data is almost always related to specific validity periods. A HR view provides data for specific time intervals.
In general terms, a HR view is a logical perspective of interval-dependent internal tables.
See also:
Processing All Infotype Records (PA-PAD)
Processing All Infotype Records (PA-APP)
Processing a Specific Infotype Record (PA-PAD)
Processing a Specific Infotype Record (PA-APP)
3 Import/Export Files in HR
The following sections describe the purpose of files PCL1 and PCL2 and explains how to access them.
Files PCL1, PCL2, PCL3 and PCL4
Storing Data in PCLn Files
PCLn Buffer
Cluster Directory Manager
3.1 Files PCL1, PCL2, PCL3 and PCL4
Which information is stored in the files?
File PCL1 is the basis for the HR work area data. It contains information from the time data recording, for example, incentive wage time tickets or infotype supplement texts.
File PCL2 contains derived information, for example, payroll results. It also contains all generated payroll schemas.
File PCL3 contains applicant data.
File PCL4 contains the change documents for HR master data and recruitment.
The structure of PCLn files corresponds to that of the INDX file which you may be familiar with from other applications. The structure of all PCLn files (n = 1, 2, 3, and 4) is identical.
Structure of Files
Like in almost all SAP files, the key element with the highest priority is the client; data within a client is grouped according to basic relations (field PCLn-RELID).
The type of basic relation is known as a cluster and characterizes the stored data according to the type, for example, cluster RX contains the payroll result for country X (from table T500L) and cluster TE contains the trip costs data.
Depending on the cluster, the structure of PCLn-SRTFD is defined in a field string xx-KEY, which is defined in an include RPCnxxy0.
Naming conventions
n = 1, 2, 3, or 4 (for PCL1, PCL2, PCL3, or PCL4)
xx = for the cluster
y = 0 for international clusters
y = country grouping according to T500L for national clusters
The personnel number is usually the first component of xx-KEY.
Importing and Exporting Data
The import/export files PCLn are managed with the ABAP/4® commands IMPORT and EXPORT . These commands store objects such as fields, field strings, or internal tables on the database, or read these from the database. Data is read from and written to the database using a unique key( xx-Key).
Please note that the RMAC macros RP-IMP-Cn-xx and RP-EXP-Cn-xx are provided for importing and exporting data. Only these macros should be used.
See also Macro Modules
3.2 Storing Data in PCLn Files
Data from the different HR application areas is stored in data clusters in PCLn files (n = 1, 2, 3, or 4).
This collection of data objects can consist of:
Fields used within reports
Field strings
Internal tables
The structure of the PCLn files provides a framework for the individual application areas.
Each application area must have a two-character cluster name (relation ID). It must also have a key structure; 40 bytes of the SRTFD field are available for this structure.
When a record is exported to the PCLn file, the cluster ID is written to the RELID field and the key value to the SRTFD field.
Naming convention for includes when defining clusters:
RPCnxxy0 n = 1, 2, 3 or 4 (for PCL1, PCL2, PCL3, PCL4)
xx = cluster ID
y = country indicator
Description of Cluster Data using Cluster RX as an Example
The data definition is stored in the include RPC2RX00 in accordance with the above naming conventions.
Structure of cluster key:
Data: BEGIN OF RX-KEY.
INCLUDE STRUCTURE PC200.
DATA: END OF RX-KEY.
The DDIC structure PC200 contains the fields PERNR (personnel number) and SEQNO (sequential number).
The data definition of the cluster also contains other internal tables.
For a list of available data clusters, refer to the domain description in the Data Dictionary.
xx Key
The xx key name is dependent on the cluster.
The RX KEY is used for all Rx and Xx clusters. In all other cases, the name of the xx key corresponds to that of the cluster.
Cluster xx Key
RA RX-KEY
B1 B1-KEY
G3 G3-KEY
XA RX-KEY
3.3 PCLn Buffer
To keep the number of database accesses to a minimum, import and export data is stored in the main memory buffer. Buffer management routines ensure that exported data can be stored in the PCLn files.
The following two examples illustrate which problems can occur without a buffer.
Retroactive accounting of payroll results
Starting payroll in the test mode
Retroactive Accounting of Payroll Results
In February 1998, a retroactive accounting run is executed for January.
FOR PERIOD 199801 IN PERIOD 199802
The payroll results for January are recalculated and then written directly to the database.
Result:
The database now contains the results of the following payroll periods.
FOR-PERIOD 199801 IN-PERIOD 199802
FOR-PERIOD 199801 IN-PERIOD 199801
Payroll is then run for February.
FOR-PERIOD 199802 IN-PERIOD 199802
If problems should arise during the payroll run for this period, the February record is not stored on the database.
Result:
The current January record on the database is:
FOR-PERIOD 199801 IN-PERIOD 199802
This problem does not arise if you use the buffer since all data of a transaction is always updated collectively. In the above example, the recalculated January result would be stored in the buffer and, if the payroll run for February were terminated prematurely, the database would not be updated.
The current January record on the database would thus be:
FOR-PERIOD 199801 IN-PERIOD 199802
Starting Payroll in the Test Mode
In a test run, the database is not updated. Since the payroll results from the previous period are used as the basis for calculating the results of the following period, the results of the actual payroll run would differ from those of the test run, if this test run were executed over several periods.
The use of the buffer enables trouble-free access to the required results for the previous period.
What is required for exporting/importing data to/from the PCLn files using the buffer?
 The following includes contain the data definition for the buffer. They must be included in the report that writes the data to or reads the data from the database.
RPPPXD00
RPPPXD10
 Include RPPPXD10 must be in the common part BUFFER .
Include RPPPXM00, which contains the buffer management routines, is also required.
The macros for importing and exporting data must comply with the following naming convention:
Naming Convention for EXPORT/ IMPORT Macros:
RP-aaa-Cn-xy
where aaa = IMP / EXP, n=1 for PCL1, 2 for PCL2, 3 for PCL3, 4 or PCL4
and xy = cluster name.
This guarantees consistency between the export and import of data and also ensures that all exported objects are imported again.
Export Using the Data Buffer
When macros are used for exporting, records are written to a main memory buffer and not directly to the database. When the program run has been completed, the records in the buffer are stored in the appropriate PCLn database.
Import Using the Data Buffer
When the macros are used to import data, the data records are not read directly from file PCLn. Instead, the system checks the buffer directory to see whether the main memory already contains a record with the same key. If this is not the case, the record is read from PCLn to the buffer and then retrieved from the buffer for the report.
If the import is successful, the return code RP-IMP-xy-SUBRC = 0 is set. When data is read from the buffer, the system carries out a check for cluster authorization. Standard import programs follow the naming convention RPCLSTxy (xy = cluster name).
 report rpttcdmg.
tables:
pernr,
pcl1,
pcl2.
include rpppxd00. "buffer definitions
data: begin of common part 'BUFFER'.
include rpppxd10. "PCLx buffer
data: end of common part.
data: begin of common part 'CLUSTER_DIRECTORY'.
include rpc2cd00. " "cluster directory definitions
data: end of common part.
include rpc2rdd0.
get pernr.
rp-init-buffer. "reset buffer
cd-key-pernr = pernr-pernr.
rp-imp-c2-cd. "read cluster CD from
buffer/DB
perform cd_manager using ... .
alternative: call function rp_evaluation_periods...
rx-key-pernr = pernr-pernr.
rx-key-seqno = rgdir-seqnr.
rp-imp-c2-rd. "read cluster RD from
buffer/DB
rp-exp-c2-rd. "update cluster RD in buffer
perform prepare_update using 'V'. "update database (DB)
Subroutines CD manager and Cluster buffer
include rpcmgr00. "Cluster Directory Manager
include rpppxm00. "module pcl1(2)-buffer
3.4 Cluster Directory
Finding Payroll Results for a Specific Query
Payroll results are stored in cluster Rx of the PCL2.
The cluster key is non-mnemonic. It contains the PERNR (personnel number) and SEQNO (sequential number) fields.
The internal table RGDIR contains a directory entry for each payroll result. This entry is a sequential number (RGDIR-SEQNR) which uniquely identifies the payroll result.
Payroll results can only be imported if the payroll cluster key contains the personnel number and sequential number.
Before you can import a payroll record, you must select the entry in the RGDIR on the basis of existing data such as for-period, for-payroll area, for-payroll category, in-period, in-payroll area, in-payroll category, and so on, in order to determine the sequential number.
You will probably always have the same queries when importing payroll records. For example, "Which payroll results (original and retroactively accounted records) were written for a specific payroll run (defined by IN payroll category, IN payroll area, IN period)"?
There are standard modules that can be used. It is advantageous to use the standard modules rather than self-programmed solutions because no program modifications will be required if the payroll directory changes. The modules are described in the following section:
Function Modules for Selecting Payroll Results
3.5 Function Modules for Selecting Payroll Results
The employees payroll directory is always transferred to the function modules using the table RGDIR.
The modules then transfer the payroll records which satisfy the specified selection criteria using a table whose type corresponds to that of the RGDIR but which has a different name. The selection parameters differ according to the function of the module. For more information, read the module documentation.
All module names begin with CD_.
Function Module: CD_EVALUATION_PERIODS
Function Module: CD_READ_PREVIOUS
Function Module: CD_READ_PREVIOUS_ORIGINAL
Other Modules for the Payroll Cluster
Sample Report
Function Module: CD_EVALUATION_PERIODS
This module transfers the payroll results to a payroll run as A records (current). It also transfers the accompanying P records (previous).
This is the module most frequently used in evaluation programs.
Table contents before the function module is accessed:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY PAYID INPTY INPID
00001 01.1996 01.01.96 01.15.96 01.1996 01.01.96 01.15.96
00002 01.1996 01.01.96 01.15.96 01.16.96 01.16.96 B 0
00003 01.16.96 01.16.96 01.16.96 01.16.96 01.16.96 B 0 B 0
00004 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 0 A 0
00005 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 1 A 1
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 01.15.96
00008 03.1996 01.16.96 01.31.96 03.1996 01.01.96 02.15.96
The following parameters are transferred:
- BONUS_DATE = '00000000'
- INPER_MODIF = '02'
- INPER = '199803'
- PAYTY = ' '
- PAYID = ' '
Result:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY INPTY INPID SRTZA
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96 P
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96 A
00008 03.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96 A
Explanation of individual fields
Function Module: CD_READ_PREVIOUS
This module transfers a previous payroll record for a payroll record; this is the newest record for the payroll period (or daily payroll run) which was written before the transferred payroll record and contains the same FOR data as the transferring record.
Table contents before the function module is accessed:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY PAYID
00001 01.1996 01.01.96 01.15.96 01.1996 01.01.96 01.15.96
00002 01.1996 01.01.96 01.15.96 01.16.96 01.16.96
00003 01.16.96 01.16.96 01.16.96 01.16.96 01.16.96 B 0
00004 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 0
00005 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 1
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
00008 03.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
The following parameters are transferred:
- Record with SEQNR '00007'
Result:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY SRTZA
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96 P
Explanation of individual fields
Function Module: CD_READ_PREVIOUS_ORIGINAL
This module reads the previous original payroll result.
Table contents before the function module is accessed:
SEQNR FPPER FPBEG FPEND INPER IPBEG IIPEND BONDT PAYTY PAYID
00001 01.1996 01.01.96 01.15.96 01.1996 01.01.96 01.15.96
00002 01.1996 01.01.96 01.15.96 01.16.96 01.16.96
00003 01.16.96 01.16.96 01.16.96 01.16.96 01.16.96 B 0
00004 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 0
00005 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 1
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
00008 03.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
The following parameters are transferred:
- Record with SEQNR '00008'
Result:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY SRTZA
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.3196 P
Explanation of individual fields
3.6 Other Modules for the Payroll Cluster
Modules which derive information from the payroll cluster are available in addition to the modules for payroll result selection.
1. CD_RETROCALC_PERIOD
This module differentiates between original payroll records and retroactive accounting records.
Table contents before the function module is accessed:
SEQNR FPPER FPBEG FPEND INPER IPBEG IPEND BONDT PAYTY PAYID
00001 01.1996 01.01.96 01.15.96 01.1996 01.01.96 01.15.96
00002 01.1996 01.01.96 01.15.96 01.16.96 01.16.96
00003 01.16.96 01.16.96 01.16.96 01.16.96 01.16.96 B 0
00004 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 0
00005 01.17.96 01.17.96 01.17.96 01.17.96 01.17.96 A 1
00006 02.1996 01.16.96 01.31.96 02.1996 01.16.96 01.31.96
00007 02.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
00008 03.1996 01.16.96 01.31.96 03.1996 02.01.96 02.15.96
The following parameters are transferred:
- Record with SEQNR '00008'
Result:
- CALCD = ' '
Explanation of individual fields
2. CD_PAYROLL_UNTIL
This module reads the RGDIR for the date up to which the regular payroll run was executed for an employee.
3. CD_HIGHEST_PAYDT
This module reads the most recent check date for an employee from the RGDIR.
4. CD_GET_INFO
This module provides information (most recent check date, accounted to date) for a particular personnel number.
3.7 Explanation of Individual Fields
For-Information
The FPPER, FPBEG, FPEND, BONDT, PAYTY, PAYID, ABKRS, PERMO, PAYDT, JUPER fields contain information on the period for which payroll is run.
In-Information
The INPER, IPEND, INPTY, INPID, IABKRS, IPERM fields contain information on the period in which payroll is run.
SEQNR
The field is used as a key to uniquely identify the payroll record.
This field also defines the sequence of payroll results (history).
Control Indicator (SRTZA)
Control indicator Meaning
a Current
p Previous
o Old
 For more information, see the online documentation for the individual function modules.
3.8 Sample Report
REPORT RPTTMWBS.
DATA: RGDIR LIKE PC261 OCCURS 0 WITH HEADER LINE.
DATA: EVPDIR LIKE RGDIR OCCURS 0 WITH HEADER LINE.
DATA: PREVIOUS_RESULTS LIKE RGDIR OCCURS 0 WITH HEADER LINE.
DATA: CALCD TYPE C.
DATA: IN_ENTRY LIKE PC261.
DATA: OUT_ENTRY LIKE PC261.
INCLUDE RPCCCD09.
CALL FUNCTION 'CU_READ_RGDIR'
EXPORTING
PERSNR = '00021218'
TABLES IN_RGDIR = RGDIR
EXCEPTIONS
NO_RECORD_FOUND = 1
OTHERS = 2.
Read RGDIR
CALL FUNCTION 'CD_EVALUATION_PERIODS'
EXPORTING
BONUS_DATE = '00000000'
INPER_MODIF = '02'
INPER = '199603'
PAY_TYPE = CD_C-REGULAR
PAY_IDENT = ' '
TABLES
RGDIR = RGDIR
EVPDIR = EVPDIR
IABKRS =
EXCEPTIONS
NO_RECORD_FOUND = 1
OTHERS = 2.
output:
00006
00007
00008
Read regular payroll results for January
A results (original result plus retroactive calculations)
and P results
LOOP AT EVPDIR WHERE SRTZA = CD_C-ACTUAL.
Only current results (00007 and 00008)
CALL FUNCTION 'CD_RETROCALC_PERIOD'
EXPORTING
ENTRY = EVPDIR
IMPORTING
CALCD = CALCD
EXCEPTIONS
OTHERS = 1.
Determine, whether original result
CHECK CALCD = ' '.
Special processing: Only the original period
March is processed (seqnr 00008).
IN_ENTRY = EVPDIR.
CALL FUNCTION 'CD_READ_PREVIOUS_ORIGINAL'
EXPORTING
IN_RECORD = IN_ENTRY
IMPORTING
OUT_RECORD = OUT_ENTRY
TABLES
RGDIR = RGDIR
EXCEPTIONS
OTHERS = 1.
out_entry now contains the previous results
Input 00008 ----> Output 00006
ENDLOOP.
LOOP AT EVPDIR WHERE SRTZA = CD_C-ACTUAL.
IN_ENTRY = EVPDIR.
CALL FUNCTION 'CD_READ_PREVIOUS'
EXPORTING
IN_RECORD = IN_ENTRY
TABLES
RGDIR = RGDIR
OUT_RGDIR = PREVIOUS_RESULTS
EXCEPTIONS
NO_RECORD_FOUND = 1
OTHERS = 2.
Input 00007 ---> 00006
Input 00008 ---> no record found
Output structure is a table, since there can be
several previous results: for example, if legal person
changes, and is retroactively deleted
ENDLOOP
4 Specific Commands
The following sections describe the different specific commands in HR.
Function modules in HR
Macro modules
4.1 Function Modules in HR
Function modules are program modules which have a defined interface and allow type testing of parameters.
They are managed with transaction SE37 and combined to function groups according to relevant criteria. You can access this transaction under Tools  ABAP Workbench  Function Builder.
The HR function groups use the naming convention RPxx or HRxx where xx is an identifier of your choice.
You can use the SHOW FUNCTION * editor command to branch from report processing to function module display.
4.2 Macro Modules
Definition
An module that can be called within an ABAP program.
Use
Like subprograms and function modules, macro modules are a means of presenting programs in modular form. Macro modules (macros) are used often in the Human Resources application component (HR).
Defining and Calling Modules
Two options are provided:
Macros can be defined in reports or includes using the ABAP command DEFINE. A macro can be used within a report or within an include. If a macro is used in a report, and the macro is defined in an include with the DEFINE command, the include must be integrated.
 Macros have the following advantages:
If a macro is changed, each report using this macro is automatically regenerated when it is executed.
Macros can also be defined as RMAC macros. The source code of these modules is stored in the function section of the control table TRMAC (Macros in ABAP Programs). The coding is grouped under a specific name in the table key.
According to conventions, the first two letters of the name must stand for the application. The rest of the name is freely definable.
 Customer-specific RMAC modules should begin with a special character.
The macros defined in the control table TRMAC can be used by all reports.
 When you change a RMAC macro in the table TRMAC, the reports that use this macro are not regenerated automatically. You must regenerate them manually.
The following section includes a list of programming utilities for the logical databases PNP and PAP.
5 Utilities in HR
The following utilities are available.
General Utilities
Report Meaning
RPUACG00 Code generation / authorization check
RPUAUD00 Infotype auditing
Programming Utilities
Report Meaning
RPINCL10 String search in reports
Cluster Utilities
Report Meaning
RPCLSTyy Display cluster for PCLx (yy = RELID)
RPUPxD00 Delete cluster for PCLx (individual data records)
RPUPxD10 Delete cluster for PCLx (several data records)
6 References:
Different parts of the document has been prepared with the help of articles available on Internet
Following websites are referred :
a). http://help.sap.com
b). http://sapfans.com
c). http://www.sap-basis-abap.com/saphr.htm
HR:
HR deals with the INFOTYPES which are similar to Tables in General ABAP.
There are different ways of fetching data from these infotypes.
There are different areas in HR LIKE Personal Admn, Orgn Management, Benefits, Time amangement, Event Management, Payroll etc
Infotypes for these areas are different from one another area.
storing of records data in each type of area is different
LDBS like PNP are used in HR programing.
Instead of Select.. we use some ROUTINES and PROVIDE..ENDPROVIDE.. etc
and in the case of Pay roll we use Clusters and we Import and Export them for data fetching.
On the whole Normal ABAP is different from HR abap.
For Personal Admn the Infotypes start with PA0000 to PA1999
Time Related Infotypes start with PA2000 to PA2999.
Orgn related Infotypes start with HRP1000 to HRP1999.
All custom developed infotypes stsrat with PA9000 onwards.
In payroll processing we use Clusters like PCL1,2,3 and 4.
Instead of Select query we use PROVIDE and ENDPROVIDE..
You have to assign a Logical Database in the attributes PNP.
Go through the SAp doc for HR programming and start doing.
http://www.sapdevelopment.co.uk/hr/hrhome.htm
See:
http://help.sap.com/saphelp_46c/helpdata/en/4f/d5268a575e11d189270000e8322f96/content.htm
sites regarding hr-abap:
http://www.sapdevelopment.co.uk/hr/hrhome.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPA/PAPA.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAPD/PAPD.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PYINT/PYINT_BASICS.pdf
http://www.atomhr.com/training/Technical_Topics_in_HR.htm
http://www.planetsap.com/hr_abap_main_page.htm
You can see some Standard Program examples in this one ...
http://www.sapdevelopment.co.uk/programs/programshr.htm
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci1030179,00.html?Offer=SAlgwn12604#Certification
http://www.erpgenie.com/faq/hr.htm.
http://www.planetsap.com/hr_abap_main_page.htm
http://www.sapbrain.com/TUTORIALS/FUNCTIONAL/HR_tutorial.html
These are the FAQ's that might helps you as well.
http://www.sap-img.com/human/hr-faq.htm
http://www.sapgenie.com/faq/hr.htm
http://www.planetsap.com/hr_abap_main_page.htm
http://www.atomhr.com/library_full.htm
HR Long texts Upload
Look at the below link
sample code
START-OF-SELECTION.
GET pernr.
rp_provide_from_frst p0000 space pn-begda pn-endda.
if pnp-sw-found EQ '1'.
READ TABLE p0001 WITH KEY pernr = p0000-pernr.
if sy-subrc = 0.
write : p0001-plans. " earliest.
endif.
endif.
rp_provide_from_last p0014 space pn-begda pn-endda.
if pnp-sw-found EQ '1'.
READ TABLE p0014 WITH KEY pernr = p0000-pernr.
if sy-subrc = 0.
write : p0014-LGART. .
endif.
endif.
check out the following links
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PYINT/PYINT_DATAEX.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CAARCHR/CAARCHR.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAXX/PAXX.pdf
general links..
http://www.sap-img.com/abap.htm
http://help.sap.com/saphelp_46c/helpdata/en/fc/eb2d67358411d1829f0000e829fbfe/content.htm
http://www.geocities.com/victorav15/sapr3/abap.html
http://www.henrikfrank.dk/abapexamples/SapScript/sapscript.htm
http://abap4.tripod.com/Other_Useful_Tips.html
http://help.sap.com/saphelp_45b/helpdata/en/cf/21ee2b446011d189700000e8322d00/content.htm
http://www.sap-basis-abap.com/sapmm.htm
http://sap.ittoolbox.com/nav/t.asp?t=303&p=448&h1=303&h2=322&h3=448
http://sapfans.com/
http://cma.zdnet.com/book/abap/ch03/ch03.htm
http://help.sap.com/saphelp_40b/helpdata/en/4f/991f82446d11d189700000e8322d00/applet.htm
http://sappoint.com/abap/
http://www.henrikfrank.dk/abapuk.html
http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/abapindx.htm
http://www.sapgenie.com/abap/index.htm
http://www.sap-img.com/abap.htm
http://www.sapdevelopment.co.uk/tips/tipshome.htm
http://help.sap.com/printdocu/core/Print46c/en/Data/Index_en.htm
http://sap.ittoolbox.com/nav/t.asp?t=322&p=322&h1=322
http://sap.ittoolbox.com/nav/t.asp?t=448&p=448&h1=448
http://www.thespot4sap.com/
http://www.kabai.com/abaps/q.htm
http://www.geocities.com/mpioud/Abap_programs.html
http://www.sapgenie.com/abap/tips_and_tricks.htm
http://www.sapassist.com/code/d.asp?whichpage=1&pagesize=10&i=10&a=c&o=&t=&q=&qt=
https://www.sdn.sap.com/irj/sdn/collaboration
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/HRINF/HRINF.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CAARCHR/CAARCHR.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAXX/PAXX.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PYINT/PYINT_DATAEX.pdf -
China - Custom Tax, VAT Tax Handling
Hi SAP friends
I have the problem of Import custom tax and VAT tax for puchasing.
It is Domestic Sales scenario. Need to purchase material from oversea vendor.
Oversea vendor sell mateiral to China company RMB 100 per PC.
Mainland company needs to pay custom for custom tax 20% and the custom tax is non-deductible. Custom tax is 100*(20%) = RMB 20.
Then, Mainland company needs to pay China government VAT tax(17%),
VAT tax is 100(1+custom tax)(VAT tax)-100 = 100(1.2)(1.17) - 100 = 40.4
So, VAT tax amount = Material price * custom tax * VAT tax
In PO, I use ZOA1 custom condition type to input Cutom tax amount for Custom tax and input Tax code for VAT tax.
When good receipt, RMB 120 post to Material stock account. RMB 100 post to GR/IR. RMB20 post to custom account
It still be fine.
When do LIV, RMB 100 clear GR/IR. RMB 17 post to VAT tax account becasue it use RMB 100 as base amount to calculate VAT tax. RMB117 post to AP vendor account.
Actually, mainland company only pays RMB100 to oversea vendor and the Tax amount should be include Custom amount. Corrrect VAT tax amount is 100(1.2)(1.17) - 100 = 40.4 (use RMB120 as base amount to calculate VAT tax), but not only RMB 17 . But, in LIV payment to vendor now is RMB120. It is not fulfill the requirement of mainland company.
Do anyone have experience about China Import purchasing material. And, would share how to settle the payment of vendor and how to make use (Material price + Custom tax amount) as base amount to calculate VAT tax amount?
Thanks a lot for your help!
MagIt may helpful hint before going to configure.....abt the tax codes..
Value Added Tax (VAT) was implemented in China in 1984. Initially, the tax was levied on 24 specified
items. The need for constructing a socialist market economy system in China resulted in the proclamation
of 'The Provisional Regulation of the People's Republic of China on Value Added Tax' on January 1, 1994.
Value Added Tax in China is one of the important sources of fiscal revenues for the government,
especially the central government. The implementation of VAT is done by the State Administration of
Taxation while the customs collects the import VAT.
..******note this point it may helpful*********
The revenue earned from VAT is divided between the central (75%) and local government (25%).
The list of VAT taxable items and the rates in China can be understood from the following:
Coverage of Collection
Rate
Exportation of goods
Edible vegetable and grain duplicates
Agriculture, forestry, aquatic products, products of animal husbandry
Book, magazines, newspapers
Tap water, cooling, heating, hot air supplying, gas, hot water, natural gas, liquefied petroleum gas,
coal/charcoal products for household use
Selected non-metal mineral products, Selected metal mineral products, coal
Chemical fertilizers, feeds, agricultural machinery, agricultural chemicals, plastic converting film for
farming 13%
Crude oil, mine salt and other goods and services not listed above
17%
VAT in China is payable by individuals as well as enterprises who are associated with selling
merchandise, providing services related to processing, repairing and assembling and import of goods.
VAT Taxpayers in China are categorized into two sections, normal taxpayer and small taxpayer, depending
on the turnover of the goods and services on sale and the accounting system condition.
The amount of VAT payable by the normal taxpayer can be calculated by the following:
Output tax payable for the current period u2013 Input tax payable for the current period = Tax payable
The amount of VAT payable by the small taxpayer is as follows:
Sales amount x Applicable rate = Tax payable
(The applicable rate is 4% for commercial sectors and 6% for others)
Certain items and services are exempted from VAT. These include the following:
u2022 Instruments and equipment imported for direct use in scientific research, experiment and education
u2022 the agricultural production materials as ruled, the self-produced primary agricultural products sold by
Agricultural producing units and individuals
u2022 Imported materials and equipment granted, gifted by foreign governments or international organizations
u2022 Contraceptive medicines and devices
u2022 Articles imported directly by organizations for the disabled for exclusive use by the disabled
u2022 Materials imported directly to support the poverty relief and charity cause donated freely by overseas
natural persons, legal persons and other organizations
u2022 The taxable services provided by individual disabled laborers
u2022 Antique books purchased from the public
Certain reforms have been implemented in particular areas of China in 2004 with regard to the VAT.
chk the website http://www.cabc.org.cn/news/2006-1-19/2006119145600.html -
Hi all,
I am making an adhoc query of an infotype - say 0001.
Now whatever fields have lov's or f4 possible value helps, their heading in the output is coming in proper text like 'personal number" etc. All those fields which are free text - like Legal Person ( P0001-JUPER) are coming as headings like 'LP'. i.e. their proper text is not coming. Please let me know how to change this text to the approprriate field description. Also if I created some fields in a custom infotype as data element type 'XFELD' check box, there the heading of the field in the ad hoc query is coming as 'Checkbox' which is actually the short description of the domain ' XFELD'. Please let me know how to change this to desiered heading..
Thanks
RibhuDear Ribhu,
http://help.sap.com/saphelp_nw04s/helpdata/en/fb/ac5f2d61ae11d295b10000e82de14a/frameset.htm
Using transaction CMOD chose the following menu option
TextEnhancements -> Keywords -> change
2) Give Data Element name
3) Enter the data element that you wish to change the display text for, then click the change icon(Pencil). You will then be presented with the screen, which allows you to modify the text values of the data element.
Hope this will help.
Regards,
Naveen. -
No client certificate available, sending empty certificate message
Dear Experts,
I am trying to establish SSL client certificate connection to external partner. What puzzles me is that the certificate is not picked up by SAP PI. The intermediate and root CA for the partner are OU=www.verisign.com/CPS Incorp.by Ref. LIABILITY LTD.(c)97 VeriSign,OU=VeriSign International Server CA - Class 3,OU=VeriSign, Inc.,O=VeriSign Trust Network and OU=Class 3 Public Primary Certification Authority,O=VeriSign, Inc.,C=US, respectively. You will be able to spot them in the Accepted Certificate Authority list, yet PI insists on sending empty certificate.
Below is trace gathered from J2EE default trace. Please help shed some light
Date : 11/16/2011
Time : 8:49:11:423
Message : additional info ssl_debug(9): Starting handshake (iSaSiLk 4.3)...
ssl_debug(9): Sending v3 client_hello message to preprod.connect.elemica.com:443, requesting version 3.2...
ssl_debug(9): Received v3 server_hello handshake message.
ssl_debug(9): Server selected SSL version 3.1.
ssl_debug(9): Server created new session 22:E7:C0:9E:C1:D2:78:83...
ssl_debug(9): CipherSuite selected by server: TLS_RSA_WITH_AES_256_CBC_SHA
ssl_debug(9): CompressionMethod selected by server: NULL
ssl_debug(9): Received certificate handshake message with server certificate.
ssl_debug(9): Server sent a 1024 bit RSA certificate, chain has 2 elements.
ssl_debug(9): ChainVerifier: No trusted certificate found, OK anyway.
ssl_debug(9): Received certificate_request handshake message.
ssl_debug(9): Accepted certificate types: RSA, DSA
ssl_debug(9): Accepted certificate authorities:
ssl_debug(9): CN=QuoVadis Global SSL ICA,OU=www.quovadisglobal.com,O=QuoVadis Limited,C=BM
ssl_debug(9): CN=AAA Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
ssl_debug(9): CN=CSF - Classe III - Sign et Crypt,OU=Certification Professionnelle,O=Autorite Consulaire
ssl_debug(9): CN=GTE CyberTrust Global Root,OU=GTE CyberTrust Solutions, Inc.,O=GTE Corporation,C=US
ssl_debug(9): CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net
ssl_debug(9): CN=DPWN SSL CA I2 PS,OU=I2 PS,O=Deutsche Post World Net
ssl_debug(9): CN=CSF,O=Autorite Consulaire
ssl_debug(9): C=BE,O=GlobalSign nv-sa,OU=RootSign Partners CA,CN=GlobalSign RootSign Partners CA
ssl_debug(9): CN=Dell Inc. Enterprise Utility CA1,O=Dell Inc.
ssl_debug(9): EMAIL=premium-server(a)thawte.com,CN=Thawte Premium Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
ssl_debug(9): CN=TC TrustCenter Class 2 L1 CA XI,OU=TC TrustCenter Class 2 L1 CA,O=TC TrustCenter GmbH,C=DE
ssl_debug(9): CN=VeriSign Class 3 Extended Validation SSL SGC CA,OU=Terms of use at https://www.verisign.com/rpa (c)06,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): OU=VeriSign Trust Network,OU=(c) 1998 VeriSign, Inc. - For authorized use only,OU=Class 3 Public Primary Certification Authority - G2,O=VeriSign, Inc.,C=US
ssl_debug(9): CN=TC TrustCenter SSL CA I,OU=TC TrustCenter SSL CA,O=TC TrustCenter GmbH,C=DE
ssl_debug(9): CN=Entrust Root Certification Authority,OU=(c) 2006 Entrust, Inc.,OU=www.entrust.net/CPS is incorporated by reference,O=Entrust, Inc.,C=US
ssl_debug(9): CN=VeriSign Class 3 International Server CA - G3,OU=Terms of use at https://www.verisign.com/rpa (c)10,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): CN=Meijer ipprod,OU=IT,OU=Merch,O=Meijer Stores Limited,L=Walker,ST=MI,C=US
ssl_debug(9): CN=COMODO Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
ssl_debug(9): OU=www.verisign.com/CPS Incorp.by Ref. LIABILITY LTD.(c)97 VeriSign,OU=VeriSign International Server CA - Class 3,OU=VeriSign, Inc.,O=VeriSign Trust Network
ssl_debug(9): CN=UTN - DATACorp SGC,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
ssl_debug(9): CN=Deutsche Telekom CA 5,OU=Trust Center Deutsche Telekom,O=T-Systems Enterprise Services GmbH,C=DE
ssl_debug(9): CN=TC TrustCenter Class 2 CA II,OU=TC TrustCenter Class 2 CA,O=TC TrustCenter GmbH,C=DE
ssl_debug(9): CN=VeriSign Class 3 Secure Server CA - G2,OU=Terms of use at https://www.verisign.com/rpa (c)09,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): OU=www.verisign.com/CPS Incorp.by Ref. LIABILITY LTD.(c)97 VeriSign,OU=VeriSign International Server CA - Class 3,OU=VeriSign, Inc.,O=VeriSign Trust Network
ssl_debug(9): CN=Thawte SGC CA,O=Thawte Consulting (Pty) Ltd.,C=ZA
ssl_debug(9): CN=Bertschi CA,O=Bertschi AG (Schweiz),L=Duerrenaesch,ST=Switzerland,C=CH
ssl_debug(9): CN=Cybertrust SureServer CA,O=GlobalSign Inc
ssl_debug(9): CN=VeriSign Class 3 Secure Server CA,OU=Terms of use at https://www.verisign.com/rpa (c)05,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): EMAIL=server-certs(a)thawte.com,CN=Thawte Server CA,OU=Certification Services Division,O=Thawte Consulting cc,L=Cape Town,ST=Western Cape,C=ZA
ssl_debug(9): CN=Mark Van Hamme,O=Brain2 BVBA,L=Brussels,ST=Brabant,C=BE
ssl_debug(9): CN=DigiCert High Assurance EV Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
ssl_debug(9): EMAIL=bis.at(a)siemens.com,CN=bis.siemens.at,OU=SBS ORS EDO,O=Siemens Business Services,L=Vienna,ST=Vienna,C=AT
ssl_debug(9): CN=VeriSign Class 1 Public Primary Certification Authority - G3,OU=(c) 1999 VeriSign, Inc. - For authorized use only,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): CN=mail2.adr-logistics.hu,O=ADR Logistics Kft.,L=Gyu00E1l,ST=Pest,C=HU
ssl_debug(9): EMAIL=brent.kemp(a)sscoop.com,CN=bacchusdevp.sscoop.com,OU=IS,O=Southern States Cooperative Inc,L=Richmond,ST=VA,C=US
ssl_debug(9): CN=Cybertrust SureServer Standard Validation CA,O=Cybertrust Inc
ssl_debug(9): OU=Go Daddy Class 2 Certification Authority,O=The Go Daddy Group, Inc.,C=US
ssl_debug(9): CN=Certipost E-Trust Secondary Normalised CA for Legal Persons,O=Certipost s.a./n.v.,C=BE
ssl_debug(9): EMAIL=cert(a)bit-serv.de,CN=BIT-SERV GmbH Root CA,O=BIT-SERV GmbH,C=DE
ssl_debug(9): CN=SAP_elemica_tester
ssl_debug(9): CN=GeoTrust Global CA,O=GeoTrust Inc.,C=US
ssl_debug(9): OU=Class 1 Public Primary Certification Authority,O=VeriSign, Inc.,C=US
ssl_debug(9): CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE
ssl_debug(9): CN=Montova Root CA,OU=Root CA,O=Montova,C=BE
ssl_debug(9): CN=Baltimore CyberTrust Root,OU=CyberTrust,O=Baltimore,C=IE
ssl_debug(9): CN=Dell Inc. Enterprise CA,O=Dell Inc.
ssl_debug(9): CN=COMODO High-Assurance Secure Server CA,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
ssl_debug(9): EMAIL=support(a)tamgroup.com,OU=Engineering,O=Tamgroup,ST=California,L=San Anselmo,C=US,CN=Tamgroup
ssl_debug(9): CN=GlobalSign Organization Validation CA,O=GlobalSign,OU=Organization Validation CA
ssl_debug(9): CN=Certinomis AC 1 u00E9toile,OU=0002 433998903,O=Certinomis,C=FR
ssl_debug(9): CN=GlobalSign ServerSign CA,OU=ServerSign CA,O=GlobalSign nv-sa,C=BE
ssl_debug(9): CN=QuoVadis Root CA 2,O=QuoVadis Limited,C=BM
ssl_debug(9): CN=AddTrust Class 1 CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
ssl_debug(9): CN=Equifax Secure Global eBusiness CA-1,O=Equifax Secure Inc.,C=US
ssl_debug(9): CN=GlobalSign Organization Validation CA,O=GlobalSign,OU=Organization Validation CA
ssl_debug(9): CN=thawte Primary Root CA,OU=(c) 2006 thawte, Inc. - For authorized use only,OU=Certification Services Division,O=thawte, Inc.,C=US
ssl_debug(9): CN=Certipost E-Trust Primary Normalised CA,O=Certipost s.a./n.v.,C=BE
ssl_debug(9): CN=Thawte DV SSL CA,OU=Domain Validated SSL,O=Thawte, Inc.,C=US
ssl_debug(9): OU=Equifax Secure Certificate Authority,O=Equifax,C=US
ssl_debug(9): CN=preprod.connect.elemica.com,OU=CONNECTED SOLUTIONS,O=Elemica,L=Wayne,ST=Pennsylvania,C=US
ssl_debug(9): CN=Certinomis - Autoritu00E9 Racine,OU=0002 433998903,O=Certinomis,C=FR
ssl_debug(9): CN=DPWN Root CA R2 PS,OU=IT Services,O=Deutsche Post World Net,DC=com
ssl_debug(9): CN=Thawte Test CA Root,OU=TEST TEST TEST,O=Thawte Certification,ST=FOR TESTING PURPOSES ONLY,C=ZA
ssl_debug(9): OU=Class 3 Public Primary Certification Authority,O=VeriSign, Inc.,C=US
ssl_debug(9): EMAIL=santiago.tolosa(a)eu.rhodia.com,CN=Rhodia Development CA,OU=ISF - WARTE,O=Rhodia,L=La Villette,ST=France,C=FR
ssl_debug(9): CN=Entrust.net Secure Server Certification Authority,OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS incorp. by ref. (limits liab.),O=Entrust.net,C=US
ssl_debug(9): CN=DigiCert High Assurance CA-3,OU=www.digicert.com,O=DigiCert Inc,C=US
ssl_debug(9): CN=Groep H. Essers TEST (99805D6DA33FCC1700010002),O=Montova,C=BE
ssl_debug(9): serialNumber=07969287,CN=Go Daddy Secure Certification Authority,OU=http://certificates.godaddy.com/repository,O=GoDaddy.com, Inc.,L=Scottsdale,ST=Arizona,C=US
ssl_debug(9): CN=VeriSign Class 3 Secure Server 1024-bit CA - G2,OU=Terms of use at https://www.verisign.com/rpa (c)09,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): serialNumber=10688435,CN=Starfield Secure Certification Authority,OU=http://certificates.starfieldtech.com/repository,O=Starfield Technologies, Inc.,L=Scottsdale,ST=Arizona,C=US
ssl_debug(9): CN=Conextrade,OU=Swisscom IT,O=Swisscom AG,L=Zurich,ST=Zurich,C=CH,EMAIL=ccc.eTrade(a)swisscom.com
ssl_debug(9): CN=b2bproto.basf-corp.com,OU=Corporate IS,O=BASF Corporation,L=Mount Olive,ST=New Jersey,C=US
ssl_debug(9): CN=GlobalSign Domain Validation CA - G2,O=GlobalSign nv-sa,C=BE
ssl_debug(9): CN=Swisscom Root CA 1,OU=Digital Certificate Services,O=Swisscom,C=ch
ssl_debug(9): CN=GeoTrust DV SSL CA,OU=Domain Validated SSL,O=GeoTrust Inc.,C=US
ssl_debug(9): EMAIL=!sysadmin(a)elemica.com,CN=www.elemica.com,OU=Connected Solutions,O=Elemica, Inc,L=Wayne,ST=Pennsylvania,C=US
ssl_debug(9): CN=GeoTrust SSL CA,O=GeoTrust, Inc.,C=US
ssl_debug(9): CN=RapidSSL CA,O=GeoTrust, Inc.,C=US
ssl_debug(9): CN=Entrust Certification Authority - L1E,OU=(c) 2009 Entrust, Inc.,OU=www.entrust.net/rpa is incorporated by reference,O=Entrust, Inc.,C=US
ssl_debug(9): CN=EAS,O=COMPUDATA EDI Dienstleister,C=CH,EMAIL=helpdesk.dl(a)compudata.ch
ssl_debug(9): CN=GlobalSign Domain Validation CA,O=GlobalSign nv-sa,OU=Domain Validation CA,C=BE
ssl_debug(9): CN=GlobalSign Primary Secure Server CA,OU=Primary Secure Server CA,O=GlobalSign nv-sa,C=BE
ssl_debug(9): CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE
ssl_debug(9): CN=Entrust Root Certification Authority,OU=(c) 2006 Entrust, Inc.,OU=www.entrust.net/CPS is incorporated by reference,O=Entrust, Inc.,C=US
ssl_debug(9): CN=Thawte SSL CA,O=Thawte, Inc.,C=US
ssl_debug(9): CN=Entrust Certification Authority - L1C,OU=(c) 2009 Entrust, Inc.,OU=www.entrust.net/rpa is incorporated by reference,O=Entrust, Inc.,C=US
ssl_debug(9): CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
ssl_debug(9): EMAIL=vladimir.polak(a)esa.ch,CN=Vladimir Polak,O=Einkaufsorganisation des Schweizerischen Auto- und Motorfahrzeuggewerbes,C=CH
ssl_debug(9): CN=IT Directions and Strategies,OU=ITDS EDI,ST=WI,C=US,L=Hartland,EMAIL=aklumpp(a)itdsllc.com,O=ITDS EDI
ssl_debug(9): CN=Entrust Certification Authority - L1B,OU=(c) 2008 Entrust, Inc.,OU=www.entrust.net/CPS is incorporated by reference,OU=CPS CONTAINS IMPORTANT LIMITATIONS OF WARRANTIES AND LIABILITY,OU=AND ADDITIONAL TERMS GOVERNING USE AND RELIANCE,O=Entrust, Inc.,C=US
ssl_debug(9): CN=GlobalSign Organization Validation CA - G2,O=GlobalSign nv-sa,C=BE
ssl_debug(9): CN=VeriSign Class 1 Individual Subscriber CA - G3,OU=Persona Not Validated,OU=Terms of use at https://www.verisign.com/rpa (c)09,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): CN=VeriSign Class 1 Individual Subscriber CA - G2,OU=Persona Not Validated,OU=Terms of use at https://www.verisign.com/rpa (c)05,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): CN=TeleSec ServerPass CA 1,OU=Trust Center Services,O=T-Systems International GmbH,C=DE
ssl_debug(9): CN=TC TrustCenter Class 3 L1 CA V,OU=TC TrustCenter Class 3 L1 CA,O=TC TrustCenter GmbH,C=DE
ssl_debug(9): C=NL,ST=Zuid-Holland,L=Spijkenisse,O=De Rijke Transport,OU=ICT,CN=smtphost.derijke.com
ssl_debug(9): CN=VeriSign Class 3 Secure Server CA - G3,OU=Terms of use at https://www.verisign.com/rpa (c)10,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): CN=Comodo Class 3 Security Services CA,OU=(c)2002 Comodo Limited,OU=Terms and Conditions of use: http://www.comodo.net/repository,OU=Comodo Trust Network,O=Comodo Limited,C=GB
ssl_debug(9): CN=UTN-USERFirst-Hardware,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
ssl_debug(9): OU=Starfield Class 2 Certification Authority,O=Starfield Technologies, Inc.,C=US
ssl_debug(9): EMAIL=ftp(a)csx.com,C=US,O=CSX Corporation Inc,CN=CSX_CORPORATION_AS2_02062009
ssl_debug(9): CN=EssentialSSL CA,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
ssl_debug(9): CN=Network Solutions Certificate Authority,O=Network Solutions L.L.C.,C=US
ssl_debug(9): CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU=(c) 2006 VeriSign, Inc. - For authorized use only,OU=VeriSign Trust Network,O=VeriSign, Inc.,C=US
ssl_debug(9): Received server_hello_done handshake message.
ssl_debug(9): No client certificate available, sending empty certificate message...
ssl_debug(9): Sending client_key_exchange handshake...
ssl_debug(9): Sending change_cipher_spec message...
ssl_debug(9): Sending finished message...
ssl_debug(9): Received alert message: Alert Fatal: bad certificate
ssl_debug(9): SSLException while handshaking: Peer sent alert: Alert Fatal: bad certificate
ssl_debug(9): Shutting down SSL layer...
Severity : Error
Category : /Applications/ExchangeInfrastructure/AdapterFramework/SAPLibraries/SAPXDK
Location : com.sap.aii.messaging.net.HTTPClientConnection.call(Object)
Application : sap.com/com.sap.xi.rwb
Thread : SAPEngine_Application_Thread[impl:3]_0
Datasource : 7662250:E:\usr\sap\T37\DVEBMGS00\j2ee\cluster\server0\log\defaultTrace.trc
Message ID : 00505688007A006A0000005100001B8C0004B1CF78E9602A
Source Name : com.sap.aii.messaging.net.HTTPClientConnection
Argument Objs :
Arguments :
Dsr Component :
Dsr Transaction : cc6d1cee0fec11e1c90200000074eaaa
Dsr User :
Indent : 0
Level : 0
Message Code :
Message Type : 0
Relatives : /Applications/ExchangeInfrastructure/AdapterFramework/SAPLibraries/SAPXDK
Resource Bundlename :
Session : 365
Source : com.sap.aii.messaging.net.HTTPClientConnection
ThreadObject : SAPEngine_Application_Thread[impl:3]_0
Transaction :
User : CPWONG
Dsr Root Context ID :
Dsr Connection :
Dsr Counter : -1Hi ,
Is the above problem solved , can you share the solution.
Thanks
Maybe you are looking for
-
Registering Partner Application in OAS 10.1.3.1
Machine A: ple-wlau5 OID and Oracle SSO [installed through infrastructure - 10.1.2.0.1]. such as D:\Oracle\Product\OID101201 Machine B : wlau-lap OAS [installed through 10.1.3.1] such as C:\Oracle\product\10.1.3.1\OAS10131 and Oracle Portal [installe
-
Hello, I've got a form that returns results from a MySQL table [tasks] based on three parameters: task_resource begin_date end_date Here is my code in the record set dialog box: SELECT * FROM tasks WHERE (task_resource = varName) AND (begin_date BETW
-
How do I stop all the tabs from closing at once in Safari v 6.0.3?
How do I stop all the tabs from closing at once in Safari v 6.0.3?
-
A month ago, my brother went from an iPhone 4, maybe 4s, to a Microsoft Windows or Surface phone and he took his phone number with him. However, whenever I've tried to text him from an iPhone 5s, it tells me that I'm sending him an iMessage, which s
-
Bridge table to Role Playing Dimension
Hi, Fact Sales table has role playing Customer dimension table related to it. For each role it had a relationship in the DSV. One on CustomerA the other on CustomerB. Now I have a trip dimension which should have a many to many relationship to the cu