Exact resonance fields (eigenfields) of a spin system.
B = eigfields(Sys,Par) B = eigfields(sys,Par,Opt) [B,Int] = eigfields(...)
Given a spin system Sys
and a set of orientations Par.CrystalOrientation
,
eigfields
computes exact resonance fields (so called eigenfields)
for a cw EPR experiment.
Sys
is a spin system structure.
Par
is a structure containing fields for the experimental parameters.
mwFreq
CrystalOrientation
φ, in the first column, is the angle between the xC axis and the xCyC plane projection of the orientation of the external field (zL) in the molecular frame of the spin system. θ, in the second column, is the angle at which the external field is off the zC axis. The optional χ, in the third column, specifies the third Euler angle and fixes the xL axis of the laboratory in the crystal frame. If the third angle is not given, it is assumed to be zero.
Mode
'perpendicular'
(default) or 'parallel'
Range
[Bmin Bmax]
eigfields
will only return eigenfields falling between Bmin
and Bmax
(both in mT).
The structure Opt
contains computational options.
Freq2Field
Freq2Field
should never be changed from its default 1.
Threshold
eigfields
returns the resonance fields (mT) in B
and,
optionally,
transition intensities (MHz^2/mT^2) in Int
.
The intensities returned are integrated over the plane normal to the external
magnetic field direction if only two of the three Euler angles are
specified in Ori
(see above).
The resonance fields of an S=3/2 system with orthorhombic zero-field splitting for an arbitrary orientation are
B = 59.5729 123.0851 148.9710 253.3805 387.0805 512.8191
These values are exact within the numerical accuracy of MATLAB's generalised
eigenproblem solver eig(A,B)
.
eigfields
solves a generalised eigenproblem in Liouville space describing
the fixed-frequency swept-field situation in cw EPR experiments. This approach
was first described in R.L. Belford et al., J.Magn.Reson. 11, 251-265 (1973).
pepper, resfields, resfields_perturb


20 Types of Berries and Their Health Benefits
Blackberries
As with all berries, blackberries also contain various health-protective polyphenols.
Blackberries show a significant protective effect against LBL-oxidation, a promiment cardiovascular risk factor, in human intervention studies (6).
Studies also show that wild blackberries are 3 to 5 times higher in polyphenols, so get outside and pick your own.
Nutrition Information
- Calories: 62
- Carbohydrate: 15g
- Fat: 1g
- Protein: 2g


|
|
def | __init__ |
| |
|
def | app |
| |
|
def | set_app |
| |
|
def | clear_app |
| |
|
def | has_app |
| |
|
def | name_space |
| |
|
def | set_name_space |
| |
|
def | clear_name_space |
| |
|
def | has_name_space |
| |
|
def | pathelement_size |
| |
|
def | pathelement_list |
| |
|
def | pathelement |
| |
|
def | mutable_pathelement |
| |
|
def | add_pathelement |
| |
|
def | clear_pathelement |
| |
|
def | MergeFrom |
| |
|
def | Equals |
| |
|
def | IsInitialized |
| |
|
def | ByteSize |
| |
|
def | ByteSizePartial |
| |
|
def | Clear |
| |
|
def | OutputUnchecked |
| |
|
def | OutputPartial |
| |
|
def | TryMerge |
| |
|
def | __str__ |
| |
|
|
| pathelement_ |
| |
|
| has_app_ |
| |
|
| app_ |
| |
|
| has_name_space_ |
| |
|
| name_space_ |
| |
|
|
int | has_app_ = 0 |
| |
|
string | app_ = "" |
| |
|
int | has_name_space_ = 0 |
| |
|
string | name_space_ = "" |
| |
The documentation for this class was generated from the following file:
- code/googleappengine-read-only/python/google/appengine/datastore/entity_pb.py


Widget module.
MIT. See LICENSE for full details.
An entry widget displays a one-line text string and allows that string to be edited by the user. Entry widgets support horizontal scrolling.
auto entry = new Entry() .setValue("Text") .pack();
BoundingBox
Cursor
Delete
Exportselection
Index
Insert
Justify
Selection
Show
Value
Width
XScrollCommand
XView
<<Clear>>, <<Copy>>, <<Cut>>, <<Paste>>, <<PasteSelection>>, <<PrevWindow>>, <<TraverseIn>>, <Alt-Key>, <B1-Enter>, <B1-Leave>, <B1-Motion>, <B2-Motion>, <Button-1>, <Button-2>, <ButtonRelease-1>, <ButtonRelease-2>, <Control-Button-1>, <Control-Key-Left>, <Control-Key-Right>, <Control-Key-a>, <Control-Key-b>, <Control-Key-backslash>, <Control-Key-d>, <Control-Key-e>, <Control-Key-f>, <Control-Key-h>, <Control-Key-k>, <Control-Key-slash>, <Control-Key>, <Control-Shift-Key-Left>, <Control-Shift-Key-Right>, <Double-Button-1>, <Key-BackSpace>, <Key-Delete>, <Key-Down>, <Key-End>, <Key-Escape>, <Key-F10>, <Key-Home>, <Key-KP_Enter>, <Key-Left>, <Key-Return>, <Key-Right>, <Key-Tab>, <Key-Up>, <Key>, <Meta-Key>, <Shift-Button-1>, <Shift-Key-End>, <Shift-Key-Home>, <Shift-Key-Left>, <Shift-Key-Right>, <Triple-Button-1>,
Construct the widget.
| UiElement parent | The parent of this widget. |
Get the bounding box of a character in the text.
| int charIndex | The index of the character to get the bounding box of. |
An int array representing the bounding box in pixels.


---
layout: post
title: Reasons to be cheerful
date: 2006-05-19 00:00:00
category: personal
---
Reasons to be cheerful:
- It's Friday and I have a weekend of variety: 2 days of fun and frolics lie ahead of me.
- It's Mr Falletti's birthday so we've forced him to dress as the magician he is.
- After 3 months of unpleasant uncertainty, I finally own my home; so now I know where I'll be living for the foreseeable future, and can get on with the various jobs which have piled up over the last 4 years. Massive weight lifted from mind.
- It was the cats birthday yesterday, and they celebrated by murdering their first bird. I returned home to a pile of feathers and half-chewed sparrow parts. Part of me is appalled at their obvious love of cruelty, whilst part of me is proud that - just occasionally - they can be Proper Cats, red in tooth and claw.


{% load static %} {% include "includes/css.html" %}
Toggle navigation
Stock Market Prediction System
Dashboard
Prediction
Stocks
News
Dashboard
Information today
Dow Jones Industry Average(DJIA) Today:
Multiple Axes Line Chart Example
{% include "includes/js.html" %}


opera browser extension syntax - Extensions
Browser which supports syntax highlighting - Super User Oct 11, 2009 . On both cases, because they are for older versions of the browser, if you are . google chrome: any extensions for code syntax highlighting on . Is there a one click dictionary app for Opera browser as in Firefox and Chrome? http://superuser.com/questions/54089/browser-which-supports-syntax-highlighting
You can develop your own extensions
using the xvi cumbre de montevideo.
Syntax-Highlighting Addons
WordPress Support » The code is copied wrong with Opera Browser When copies the code from the browser Opera is copied incorrectly. Sooner if that . http://wordpress.org/extend/plugins/crayon-syntax-highlighter/ · akarmenia . http://wordpress.org/support/topic/the-code-is-copied-wrong-with-opera-browser
CSS3 Is Here! Browser Extensions in Depth - Peachpit Press Oct 5, 2011 . When a browser extension is replaced with newer syntax, it said to have . IE10 */ background: -o-linear-gradient(black, white); /* Opera 11.10 . http://www.peachpit.com/articles/article.aspx?p=1750586 in one installer (526 kb).
Web browser extensions development Jan 9, 2012 . Web browser extensions development for CLIW Class. . and Helper ObjectsOpera works with Extensions and Widgets; Extensions are what . in the sensethat you can define your own content freelyIts syntax is based on an . http://www.slideshare.net/dragoslargu/web-browser-extensions-development-10917247
Fiddler Web Debugger - Useful Extensions You can develop your own extensions using the IFiddlerExtension interface. . It offers syntax highlighting and a Class Explorer to help you author scripts. . The AnyWHERE extension ( 40kb) allows you to trivially spoof the responses to browsers' GeoLocation webservice queries. Works with IE9, FF4, Chrome, and Opera. http://www.fiddler2.com/fiddler2/extensions.asp
Opera Browser Wiki :: Custom Buttons to Drag'n'Drop into your Opera Opera allows you to easily drag-n-drop custom buttons from a web page . How to create your own - If you want to make your own buttons, their syntax and all . http://operawiki.info/custombuttons
A simple JavaScript Formatter (47kb)nsdejavu(1): DjVu browser plugin - Linux man page The shared library nsdejavu.so uses the Netscape browser plugin API to . of the DjVu browser plugin can be specified by augmenting the URL using a syntax . Galeon and Firefox; KHTML based browsers such as Konqueror; and Opera. http://linux.die.net/man/1/nsdejavu
Source extension - Opera add-ons Nov 6, 2012 . To use extensions and themes, you need the Opera browser . Opera browser required. . View syntax-highlighted source of the actual DOM . https://addons.opera.com/en/extensions/details/source/ CertMaker for iOS and Android
The Quantum of the Opera Web Development Extensions for ... Dec 23, 2011 . That ain't right, because Opera is a great web browser with impressive list of . Today we would like to show you a list of Opera extensions for web . XCode Viewer is a XML-viewer that supports syntax highlight, XPath search. http://blog.templatemonster.com/2011/12/23/opera-extensions-web-developers/
Windows 8 AppContainer Loopback Utility
CSS Browser Extensions: Vendor Specific Properties | TutorialChip Jan 1, 2011 . Here is a syntax for the browser CSS extensions. selector { -moz-property: . -o-, Presto, Opera, -o-border-radius. -webkit-, Webkit, Chrome . http://www.tutorialchip.com/css/css-browser-extensions-vendor-specific-properties/ Download
Now (60kb) or
history of honda motors company
Traffic Differ
Vendor-specific Properties - SitePoint CSS Reference Vendorsbrowser makersare free to implement extensions to the CSS . few browsers actually supported ( opacity was implemented in Firefox 1.0, Opera 9, . Konqueror extension (Safari 1.1)*/ opacity: 0.6; /* the correct CSS3 syntax */ } . http://reference.sitepoint.com/css/vendorspecific Download now (47kb).
SAZ Clipboard
Browser extension - Wikipedia, the free encyclopedia The Opera desktop web browser supported extensions from version 10. . The syntax for extensions may be quite different from browser to browser, or at least . http://en.wikipedia.org/wiki/Browser_extension
Gallery
The Gallery extension (50kb) Opera browser extension extension-reload via function - Stack ... I'm developing an extension for Opera Browser and I'm searching for a function that is able to . Syntax errors in hard to reach JS environments . http://stackoverflow.com/questions/10775139/opera-browser-extension-extension-reload-via-function
Best Activex Plugin For Opera Browser Free Download: Opera ... Activex Plugin For Opera Browser Shareware and Freeware . http://www.softwaregeek.com/activex-plugin-for-opera-browser/p1.html
AnyWHERE (sample)
The AnyWHERE extension (40kb) Desktop build with new extension APIs: Screenshot, Resource - Opera May 16, 2012 . New syntax will also be enabled in the urlfilter.ini file . In all other major browsers extensions can modify context and main menus. What a . http://dev.opera.com/articles/view/new-extension-apis-screenshot-resource-loader-url-filter/
RulesTab (sample)
Opera: CSS -o- vendor extensions support in Opera Presto 2.12 The CSS specification allows for vendor-specific extensions. . That way, future versions of the browser that include the feature after it becomes fully . For linear gradients, "old syntax" refers to the previous syntax of specifying bottom left for a . http://www.opera.com/docs/specs/presto2.12/css/o-vendor/
Privacy Scanner
The Privacy Scanner
(41kb) Saying hello world to Opera extensions! - Dev.Opera Oct 21, 2010 . Opera extensions are written using regular open web standards, so all you . have to be specified in the config.xml file using the <content src=""/> syntax. . I have tried dragging the config.xml file into the Opera browser, and it . http://dev.opera.com/articles/view/opera-extensions-hello-world/
Content-Blocking (sample)
The Content Blocker
sample (11kb) NotScripts extension - Opera add-ons Jul 4, 2011 . To use extensions and themes, you need the Opera browser . -Supports Opera 11.10 (There was an Extension API syntax change to . https://addons.opera.com/en/extensions/details/notscripts/
Image-Flipper (sample)
The Image
Flipper sample (6kb) Getting started with Opera extensions - Dev.Opera Oct 21, 2010 . Opera 11 comes with a standards-based framework for running extensions that add extra functionality to the browser. . This article explains the concept, syntax basics and how to build a simple extension using this API. http://dev.opera.com/articles/view/getting-started-with-opera-extensions/
3rd-Party Extensions
Windows & Tabs API - Dev.Opera Apr 26, 2012 . getAll(): Obtains a group of windows (window collection). opera.extension. windows.getLastFocused(): Obtains the currently selected browser . http://dev.opera.com/articles/view/extensions-api-windows-tabs/
Opera: User JavaScript: Examples of Use Jun 2, 2012 . While User JavaScript is still supported in Opera, extensions are the preferred . to make Opera execute code that was intended for another browser: . if a script contains the specific IE's JScript extended syntax for an object . http://www.opera.com/docs/userjs/examples/
neXpert Performance Report Generator
Going through CSS for cross-browsing and get @charset syntax error ... Mar 6, 2013 . Going through CSS for cross-browsing and get @charset syntax error . tools of FF/IE/Chrome, nor the w3 validators, so I wonder why Opera . http://my.opera.com/community/forums/topic.dml?id=1633842
StresStimulus
Opera extensions prototypes for modifying CSS - Dev.Opera Dec 15, 2010 . Opera extensions are a powerful tool based on open web technologies, . The second extension installs a button on top of the browser window. http://dev.opera.com/articles/view/opera-extensions-prototypes-modifying-css/
Watcher - Passive Security Auditor
Readable JavaScript extension - Opera add-ons Feb 27, 2012 . To use extensions and themes, you need the Opera browser . toggle syntax highlighting; . This extension will add a button to Opera. http://addons.opera.com/extensions/details/readable-javascript/
opera.extension.tabs.getAll() - Dev.Opera Apr 26, 2012 . Syntax: BrowserTab[] getAll () . When the button is clicked, the number of browser tabs currently open, including tab . Opera extensions docs . http://dev.opera.com/articles/view/extensions-api-tabs-getall/
Ammonite - Security Scanner
Reading List extension - Opera add-ons Oct 9, 2012 . One thing that really bugs me about browser extensions is that there never . please make sure you follow the documentation for proper syntax. https://addons.opera.com/en/extensions/details/reading-list/?display=en&reports
mahindra tractor 2216 backhoe 1710c sale
x5s - Automated XSS Security Testing AssistantExtensions - Add-ons - Dev.Opera You can build Opera extensions using the Opera Extensions APIs and open . This makes Opera extensions easy to create, quick to debug, and fast to install. http://dev.opera.com/addons/extensions/
- Detecting where safe encodings were not applied to emitted
user-inputs
- Detecting where Unicode character transformations might bypass
security filters
- Detecting where non-shortest UTF-8 encodings might bypass security
filters
jobs mount horeb wi
intruder21
opera.extension.windows.create() - Dev.Opera Apr 26, 2012 . The create() method provides a way to create a new browser window. . Syntax: BrowserWindow create (optional Object[] tabs, optional . http://dev.opera.com/articles/view/extensions-api-windows-create/
ling bob riding school
HTML Inspector
Creating Opera Speed Dial Extensions - Dev.Opera May 3, 2011 . Just as you can extend your browser with one of the many hundreds of Opera extensions, you can also customise and extend Speed Dial to . http://dev.opera.com/articles/view/creating-opera-speed-dial-extensions/
BrowserWindow.focus() - Dev.Opera Apr 26, 2012 . The focus() method provides a way to focus a browser window. Parameters: None. Syntax: void focus () . onclick: function() { // Open a new browser window var win = opera.extension.windows.create(); // Give the new window . http://dev.opera.com/articles/view/extensions-api-window-focus/
WCF Binary-Encoded Message Inspector
Linkify extension - Opera add-ons Aug 3, 2011 . Download Opera. To use extensions and themes, you need the Opera browser. Home · Extensions · Productivity; Linkify?. Icon for Linkify . https://addons.opera.com/en/extensions/details/linkify/?display=en&reports
Chad Sowald's Request-To-Code
Reading List extension - Opera add-ons Oct 9, 2012 . After installing this extension to your Opera browser, you can log in or sign . please make sure you follow the documentation for proper syntax. https://addons.opera.com/en/extensions/details/reading-list/
Eyal's Extensions
- honda head gasket replace has written two extensions:
Thomas Deml's Export WCAT Script extension
CSS Browser Extensions: Vendor Specific Properties | TutorialChip Jan 1, 2011 . Here is a syntax for the browser CSS extensions. selector { -moz-property: . -o-, Presto, Opera, -o-border-radius. -webkit-, Webkit, Chrome . http://www.tutorialchip.com/css/css-browser-extensions-vendor-specific-properties/
Per-Response Latency Extension
opera.extension.windows.getLastFocused() - Dev.Opera Apr 26, 2012 . If there are no open browser windows, null is returned, otherwise a . Syntax: BrowserWindow getLastFocused () . Opera extensions docs . http://dev.opera.com/articles/view/extensions-api-windows-getlastfocused/
WPAD Server
MAMA: CSS syntax - Dev.Opera Dec 8, 2008 . It also delved into CSS specified using the @import syntax and did its best . Opera ("-o-") are all also represented by CSS browser extensions. http://dev.opera.com/articles/view/mama-css-syntax/
XML Request InspectorEnglish - Extensions - Opera add-ons Download Opera. To use extensions and themes, you need the Opera browser. English . Supported: syntax highlight, expand/collapse tags, XPath search. https://addons.opera.com/en/extensions/category/web-development/ XML DataSet InspectorBrowserTab.url - Dev.Opera Apr 26, 2012 . When creating a browser tab, if this property is not specified the browser will use its default URL. . Syntax: Attribute. readonly string url . function() { // Get the last focused window var thisWin = opera.extension.windows. http://dev.opera.com/articles/view/extensions-api-tab-url/
©2013 Telerik
|


|
FORM export_new_data .
DATA: lv_seqnr TYPE n LENGTH 9.
PERFORM export_directory CHANGING lv_seqnr.
PERFORM export_data USING lv_seqnr.
ENDFORM. " EXPORT_NEW_DATA
FORM export_directory CHANGING fv_seqnr.
DATA: ls_id_key TYPE ts_id_key,
ls_if_version TYPE ts_if_version,
ls_if_results TYPE ts_if_results,
lt_if_results TYPE tt_if_results.
MOVE: pernr-pernr TO ls_id_key-pernr,
gc_if_name TO ls_id_key-fldid.
IMPORT if_version TO ls_if_version
if_results TO lt_if_results
FROM DATABASE zhr_pcl2(id) ID ls_id_key.
ls_if_version-cdate = sy-datum.
ls_if_version-ctime = sy-uzeit.
ls_if_version-cprog = sy-repid.
ls_if_version-uname = sy-uname.
SORT lt_if_results BY seqnr DESCENDING.
READ TABLE lt_if_results INTO ls_if_results INDEX 1.
ls_if_results-seqnr = fv_seqnr = ls_if_results-seqnr + 1.
ls_if_results-frper = gv_frper.
ls_if_results-frbeg = gv_frbeg.
ls_if_results-frend = gv_frend.
ls_if_results-rundt = sy-datum.
ls_if_results-runtm = sy-uzeit.
ls_if_results-abkrs = pernr-abkrs.
SORT lt_if_results BY seqnr ASCENDING.
APPEND ls_if_results TO lt_if_results.
zhr_pcl2-aedtm = sy-datum.
zhr_pcl2-uname = sy-uname.
zhr_pcl2-pgmid = sy-repid.
zhr_pcl2-versn = gc_if_version.
EXPORT if_version FROM ls_if_version
if_results FROM lt_if_results
TO DATABASE zhr_pcl2(id) ID ls_id_key.
ENDFORM. " EXPORT_DIRECTORY
FORM get_new_data .
DATA: ls_new_p0000 TYPE ts_p0000,
ls_new_p0001 TYPE ts_p0001,
ls_new_p0002 TYPE ts_p0002,
ls_new_p0006 TYPE ts_p0006,
ls_new_p0008 TYPE ts_p0008,
ls_new_p0009 TYPE ts_p0009,
ls_new_p0014 TYPE ts_p0014,
ls_new_p0019 TYPE ts_p0019,
ls_new_p0032 TYPE ts_p0032,
ls_new_p0033 TYPE ts_p0033,
ls_new_p0041 TYPE ts_p0041,
ls_new_p0105 TYPE ts_p0105,
ls_new_p0167 TYPE ts_p0167,
ls_new_p0168 TYPE ts_p0168,
ls_new_p0169 TYPE ts_p0169,
ls_new_p0185 TYPE ts_p0185,
ls_new_p0461 TYPE ts_p0461,
ls_new_p0462 TYPE ts_p0462,
ls_new_p0463 TYPE ts_p0463,
ls_new_p0464 TYPE ts_p0464.
LOOP AT p0000
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0000 TO ls_new_p0000.
APPEND ls_new_p0000 TO gt_new_p0000.
ENDLOOP.
LOOP AT p0001
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0001 TO ls_new_p0001.
APPEND ls_new_p0001 TO gt_new_p0001.
ENDLOOP.
LOOP AT p0002
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0002 TO ls_new_p0002.
APPEND ls_new_p0002 TO gt_new_p0002.
ENDLOOP.
LOOP AT p0006
WHERE begda LE gv_frend
AND endda GE gv_frbeg
AND anssa EQ gc_permanent_address..
MOVE-CORRESPONDING p0006 TO ls_new_p0006.
APPEND ls_new_p0006 TO gt_new_p0006.
ENDLOOP.
LOOP AT p0008
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0008 TO ls_new_p0008.
APPEND ls_new_p0008 TO gt_new_p0008.
ENDLOOP.
LOOP AT p0009
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0009 TO ls_new_p0009.
APPEND ls_new_p0009 TO gt_new_p0009.
ENDLOOP.
LOOP AT p0014
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0014 TO ls_new_p0014.
APPEND ls_new_p0014 TO gt_new_p0014.
ENDLOOP.
LOOP AT p0019
WHERE begda LE gv_frend
AND endda GE gv_frbeg
AND tmart EQ gc_end_of_leave.
MOVE-CORRESPONDING p0019 TO ls_new_p0019.
APPEND ls_new_p0019 TO gt_new_p0019.
ENDLOOP.
LOOP AT p0032
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0032 TO ls_new_p0032.
APPEND ls_new_p0032 TO gt_new_p0032.
ENDLOOP.
LOOP AT p0033
WHERE begda LE gv_frend
AND endda GE gv_frbeg
AND subty EQ gc_wfn_stats.
MOVE-CORRESPONDING p0033 TO ls_new_p0033.
APPEND ls_new_p0033 TO gt_new_p0033.
ENDLOOP.
LOOP AT p0041
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0041 TO ls_new_p0041.
APPEND ls_new_p0041 TO gt_new_p0041.
ENDLOOP.
LOOP AT p0105
WHERE begda LE gv_frend
AND endda GE gv_frbeg
AND usrty EQ gc_email_address.
MOVE-CORRESPONDING p0105 TO ls_new_p0105.
APPEND ls_new_p0105 TO gt_new_p0105.
ENDLOOP.
LOOP AT p0167
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0167 TO ls_new_p0167.
APPEND ls_new_p0167 TO gt_new_p0167.
ENDLOOP.
LOOP AT p0168
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0168 TO ls_new_p0168.
APPEND ls_new_p0168 TO gt_new_p0168.
ENDLOOP.
LOOP AT p0169
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0169 TO ls_new_p0169.
APPEND ls_new_p0169 TO gt_new_p0169.
ENDLOOP.
LOOP AT p0185
WHERE begda LE gv_frend
AND endda GE gv_frbeg
AND ictyp EQ gc_wfn_payroll_id.
MOVE-CORRESPONDING p0185 TO ls_new_p0185.
APPEND ls_new_p0185 TO gt_new_p0185.
ENDLOOP.
LOOP AT p0461
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0461 TO ls_new_p0461.
APPEND ls_new_p0461 TO gt_new_p0461.
ENDLOOP.
LOOP AT p0462
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0462 TO ls_new_p0462.
APPEND ls_new_p0462 TO gt_new_p0462.
ENDLOOP.
LOOP AT p0463
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0463 TO ls_new_p0463.
APPEND ls_new_p0463 TO gt_new_p0463.
ENDLOOP.
LOOP AT p0464
WHERE begda LE gv_frend
AND endda GE gv_frbeg.
MOVE-CORRESPONDING p0464 TO ls_new_p0464.
APPEND ls_new_p0464 TO gt_new_p0464.
ENDLOOP.
ENDFORM. " GET_NEW_DATA
FORM init_globals .
CLEAR: gt_old_p0000[],
gt_old_p0001[],
gt_old_p0002[],
gt_old_p0006[],
gt_old_p0008[],
gt_old_p0009[],
gt_old_p0014[],
gt_old_p0019[],
gt_old_p0032[],
gt_old_p0033[],
gt_old_p0041[],
gt_old_p0105[],
gt_old_p0167[],
gt_old_p0168[],
gt_old_p0169[],
gt_old_p0185[],
gt_old_p0461[],
gt_old_p0462[],
gt_old_p0463[],
gt_old_p0464[].
CLEAR: gt_new_p0000[],
gt_new_p0001[],
gt_new_p0002[],
gt_new_p0006[],
gt_new_p0008[],
gt_new_p0009[],
gt_new_p0014[],
gt_new_p0019[],
gt_new_p0032[],
gt_new_p0033[],
gt_new_p0041[],
gt_new_p0105[],
gt_new_p0167[],
gt_new_p0168[],
gt_new_p0169[],
gt_new_p0185[],
gt_new_p0461[],
gt_new_p0462[],
gt_new_p0463[],
gt_new_p0464[].
CLEAR: gs_old_p0000,
gs_old_p0001,
gs_old_p0002,
gs_old_p0006,
gs_old_p0008,
gs_old_p0009,
gs_old_p0014,
gs_old_p0019,
gs_old_p0032,
gs_old_p0033,
gs_old_p0041,
gs_old_p0105,
gs_old_p0167,
gs_old_p0168,
gs_old_p0169,
gs_old_p0185,
gs_old_p0461,
gs_old_p0462,
gs_old_p0463,
gs_old_p0464.
CLEAR: gs_new_p0000,
gs_new_p0001,
gs_new_p0002,
gs_new_p0006,
gs_new_p0008,
gs_new_p0009,
gs_new_p0014,
gs_new_p0019,
gs_new_p0032,
gs_new_p0033,
gs_new_p0041,
gs_new_p0105,
gs_new_p0167,
gs_new_p0168,
gs_new_p0169,
gs_new_p0185,
gs_new_p0461,
gs_new_p0462,
gs_new_p0463,
gs_new_p0464.
CLEAR: zhr_pcl2, t569v, t549a, t549q.
IF p_cp EQ 'X'. "Period is employee dependent, unless running for other period and one payroll area.
CLEAR: gv_frper, gv_frbeg, gv_frend.
ENDIF.
CLEAR: gs_employee_data,
gs_old_employee_data,
gs_new_employee_data.
CLEAR: gv_effective_date,
gv_transfer_date,
gv_comp_change_date.
CLEAR: gv_same_tax_form,
gs_bank,
gs_exemptions.
CLEAR: gs_change_blocks.
CLEAR: gv_date_01,
gv_date_06,
gv_date_07,
gv_date_08,
gv_date_09,
gv_date_11,
gv_date_12,
gv_date_98,
gv_date_99.
CLEAR: gv_abart,
gv_trfkz,
gv_zeinh.
MOVE '0' TO gs_export_flags-ed_export. "Reset the export flag for the employee data record
ENDFORM. " INIT_GLOBALS
FORM export_data USING fv_seqnr.
DATA: ls_if_key TYPE ts_if_key,
ls_if_version TYPE ts_if_version.
MOVE: pernr-pernr TO ls_if_key-pernr,
fv_seqnr TO ls_if_key-seqnr,
gc_if_name TO ls_if_key-fldid.
ls_if_version-cdate = sy-datum.
ls_if_version-ctime = sy-uzeit.
ls_if_version-cprog = sy-repid.
ls_if_version-uname = sy-uname.
zhr_pcl2-aedtm = sy-datum.
zhr_pcl2-uname = sy-uname.
zhr_pcl2-pgmid = sy-repid.
zhr_pcl2-versn = gc_if_version.

ENDFORM. " EXPORT_DATA
FORM get_current_period CHANGING fv_frper
fv_frbeg
fv_frend.
SELECT * FROM t569v WHERE
abkrs EQ pernr-abkrs AND
vwsaz EQ '1'.
SELECT * FROM t549a WHERE
abkrs EQ pernr-abkrs.
SELECT * FROM t549q WHERE
permo EQ t549a-permo AND
pabrj EQ t569v-pabrj AND
pabrp EQ t569v-pabrp.
CONCATENATE t569v-pabrj t569v-pabrp INTO fv_frper.
MOVE t549q-begda TO fv_frbeg.
MOVE t549q-endda TO fv_frend.
ENDSELECT.
ENDSELECT.
ENDSELECT.
ENDFORM. " GET_CURRENT_PERIOD
FORM get_old_data .
DATA: lv_seqnr TYPE n LENGTH 9,
ls_if_key TYPE ts_if_key,
ls_if_version TYPE ts_if_version.
PERFORM get_last_seqnr CHANGING lv_seqnr.
MOVE: pernr-pernr TO ls_if_key-pernr,
lv_seqnr TO ls_if_key-seqnr,
gc_if_name TO ls_if_key-fldid.
IMPORT if_version TO ls_if_version
p0000_exp TO gt_old_p0000
p0001_exp TO gt_old_p0001
p0002_exp TO gt_old_p0002
p0006_exp TO gt_old_p0006
p0008_exp TO gt_old_p0008
p0009_exp TO gt_old_p0009
p0014_exp TO gt_old_p0014
p0019_exp TO gt_old_p0019
p0032_exp TO gt_old_p0032
p0033_exp TO gt_old_p0033
p0041_exp TO gt_old_p0041
p0105_exp TO gt_old_p0105
p0167_exp TO gt_old_p0167
p0168_exp TO gt_old_p0168
p0169_exp TO gt_old_p0169
p0185_exp TO gt_old_p0185
p0461_exp TO gt_old_p0461
p0462_exp TO gt_old_p0462
p0463_exp TO gt_old_p0463
p0464_exp TO gt_old_p0464
FROM DATABASE zhr_pcl2(if) ID ls_if_key.
ENDFORM. " GET_OLD_DATA
FORM get_last_seqnr CHANGING fv_seqnr.
DATA: ls_id_key TYPE ts_id_key,
ls_if_version TYPE ts_if_version,
ls_if_results TYPE ts_if_results,
lt_if_results TYPE tt_if_results.
ls_id_key-pernr = pernr-pernr.
ls_id_key-fldid = gc_if_name.
IMPORT if_version TO ls_if_version
if_results TO lt_if_results
FROM DATABASE zhr_pcl2(id) ID ls_id_key.
SORT lt_if_results BY seqnr DESCENDING.
READ TABLE lt_if_results INTO ls_if_results INDEX 1.
fv_seqnr = ls_if_results-seqnr.
ENDFORM. " GET_LAST_SEQNR
FORM begin .
DATA: ls_column_names TYPE ts_column_names.
go_structdescr_ed ?= cl_abap_typedescr=>describe_by_name( 'TS_EMPLOYEE_DATA' ).
MOVE: 'POSITION_ID' TO ls_column_names-field, 'Position ID' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'CHANGE_EFFECTIVE' TO ls_column_names-field, 'Change Effective On' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'IS_PAID_BY_WFN' TO ls_column_names-field, 'Is Paid By WFN' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'POS_USES_TIME' TO ls_column_names-field, 'Position Uses Time' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'CO_CODE' TO ls_column_names-field, 'Co Code' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'FILE_NUMBER' TO ls_column_names-field, 'File Number' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'HIRE_DATE' TO ls_column_names-field, 'Hire Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'SENIORITY_DATE' TO ls_column_names-field, 'Seniority Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'CREDITED_SERVICE_DATE' TO ls_column_names-field, 'Credited Service Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ADJUSTED_SERVICE_DATE' TO ls_column_names-field, 'Adjusted Service Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'EMPLOYEE_STATUS' TO ls_column_names-field, 'Employee Status' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'TERMINATION_DATE' TO ls_column_names-field, 'Termination Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'TERM_REASON' TO ls_column_names-field, 'Termination Reason' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'REHIRE_DATE' TO ls_column_names-field, 'Rehire Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'REHIRE_REASON' TO ls_column_names-field, 'Rehire Reason' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'LOA_START_DATE' TO ls_column_names-field, 'Leave of Absence Start Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'LOA_EXP_RET_DATE' TO ls_column_names-field, 'Leave of Absence Expected Return Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'LOA_RETURN_DATE' TO ls_column_names-field, 'Leave of Absence Return Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'LOA_REASON' TO ls_column_names-field, 'Leave of Absence Reason' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'POS_START_DATE' TO ls_column_names-field, 'Position Start Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'REPORTS_TO_ID' TO ls_column_names-field, 'Reports to Position ID' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'HOME_COST_NUMBER' TO ls_column_names-field, 'Home Cost Number' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'HOME_DEPARTMENT' TO ls_column_names-field, 'Home Department' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'LOCATION_CODE' TO ls_column_names-field, 'Location Code' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'PAY_GROUP' TO ls_column_names-field, 'Pay Group' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'LAST_NAME' TO ls_column_names-field, 'Last Name' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'FIRST_NAME' TO ls_column_names-field, 'First Name' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ACTUAL_MAR_STA' TO ls_column_names-field, 'Actual Marital Status' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'TAX_ID_NUMBER' TO ls_column_names-field, 'Tax ID Number' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'TAX_ID_EXPY_DATE' TO ls_column_names-field, 'Tax ID Expiry Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'BIRTH_DATE' TO ls_column_names-field, 'Birth Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'CORRESP_LANG' TO ls_column_names-field, 'Correspondence Language' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'GENDER' TO ls_column_names-field, 'Gender' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ADDR1_USE_AS_LEG' TO ls_column_names-field, 'Address 1 Use as Legal' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ADDRESS_LINE_1' TO ls_column_names-field, 'Address Line 1' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ADDRESS_LINE_2' TO ls_column_names-field, 'Address Line 2' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ADDRESS_1_PROV' TO ls_column_names-field, 'Address 1 Province' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ADDRESS_1_CITY' TO ls_column_names-field, 'Address 1 City' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ADDRESS_1_PSTLCD' TO ls_column_names-field, 'Address 1 Postal Code' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'ADDRESS_1_CNTRY' TO ls_column_names-field, 'Address 1 Country' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'RECEIVE_SCHD_PAY' TO ls_column_names-field, 'Receive Scheduled Payment' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'STANDARD_HOURS' TO ls_column_names-field, 'Standard Hours' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'RATE_TYPE' TO ls_column_names-field, 'Rate Type' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'RATE_AMOUNT' TO ls_column_names-field, 'Rate Amount' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'COMP_CHNGE_REASN' TO ls_column_names-field, 'Compensation Change Reason' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'SAME_TAX_FORM' TO ls_column_names-field, 'Same Tax Form' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'TRANSFER_DATE' TO ls_column_names-field, 'Transfer Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'PAYMENT_METHOD' TO ls_column_names-field, 'Payment Method' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'PRIMARY_BANK' TO ls_column_names-field, 'Primary Bank' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'PRIMARY_BRANCH' TO ls_column_names-field, 'Primary Branch' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'PRIMARY_ACCNT_NO' TO ls_column_names-field, 'Primary Account Number' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'SECONDARY_BANK' TO ls_column_names-field, 'Secondary Bank' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'SECONDARY_BRANCH' TO ls_column_names-field, 'Secondary Branch' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'SECOND_ACCNT_NO' TO ls_column_names-field, 'Secondary Account Number' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'SECOND_DEP_AMNT' TO ls_column_names-field, 'Secondary Deposit Amount' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'PROV_OF_EMPLYMNT' TO ls_column_names-field, 'Province of Employment' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'CRA_PA_RQ_ID' TO ls_column_names-field, 'CRA PA / RQ ID' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'FEDTAX_CRDT_TYPE' TO ls_column_names-field, 'Fed Tax Credit Type' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'PRVTAX_CRDT_TYPE' TO ls_column_names-field, 'Prov Tax Credit Type' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'FIRST_DAY_WORKED' TO ls_column_names-field, 'First Day Worked' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'LAST_DAY_PAID' TO ls_column_names-field, 'Last Day Paid' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'EXPECTED_RECALL' TO ls_column_names-field, 'Expected Recall' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'EXPD_RECALL_DATE' TO ls_column_names-field, 'Expected Recall Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'READY_TO_ISSUE' TO ls_column_names-field, 'Ready to Issue' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'BADGE' TO ls_column_names-field, 'BADGE' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'PAYCLASS' TO ls_column_names-field, 'PAYCLASS' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'BEGDA_TRACK_TIME' TO ls_column_names-field, 'Start Date for Tracking Time' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'SUPERVISORFLAG' TO ls_column_names-field, 'SUPERVISORFLAG' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'SUPERVISORID' TO ls_column_names-field, 'SUPERVISORID' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'TIMEZONE' TO ls_column_names-field, 'TimeZone' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'XFERTOPAYROLL' TO ls_column_names-field, 'TRANSFERTOPAYROLL' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'TO_POLICY_NAME' TO ls_column_names-field, 'Time Off Policy Name' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'TO_PLCYASS_BEGDA' TO ls_column_names-field, 'Time Off Policy Assignment Start Date' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'WORK_EMAIL' TO ls_column_names-field, 'Work Email' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'UNION_CODE' TO ls_column_names-field, 'Union Code' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
MOVE: 'WORKER_CATEGORY' TO ls_column_names-field, 'Worker Category' TO ls_column_names-name.
APPEND ls_column_names TO gt_column_names.
PERFORM get_header CHANGING gs_header.
APPEND gs_header TO gt_file_1.
ENDFORM. " BEGIN
FORM get_header CHANGING fs_header TYPE ts_raw_line.
DATA: lv_index TYPE i,
ls_component TYPE abap_compdescr,
ls_column_names TYPE ts_column_names.
LOOP AT go_structdescr_ed->components INTO ls_component.
lv_index = lv_index + 1.
READ TABLE gt_column_names INTO ls_column_names WITH KEY field = ls_component-name.
IF lv_index EQ 1.
fs_header = ls_column_names-name.
CONTINUE.
ENDIF.
CONCATENATE fs_header ',' ls_column_names-name INTO fs_header.
ENDLOOP.
ENDFORM. " GET_HEADER
FORM change_validation .
PERFORM set_cb_flags.
PERFORM set_old_data_records.
PERFORM get_dates.
PERFORM get_comp_details.
PERFORM get_bank_details.
PERFORM get_exemptions.
PERFORM get_wfn_data USING gc_part.
PERFORM set_new_data_records.
PERFORM get_dates.
PERFORM get_comp_details.
PERFORM get_bank_details.
PERFORM get_exemptions.
PERFORM get_wfn_data USING gc_part.
PERFORM check_for_bank_deletion.
CLEAR: gs_change_blocks. "Clear the change block flags
PERFORM check_for_changes.
PERFORM get_comp_change_date CHANGING gv_comp_change_date.
PERFORM get_transfers CHANGING gv_same_tax_form gv_transfer_date.
ENDFORM. " CHANGE_VALIDATION
FORM set_cb_flags .
MOVE 'X' TO : gs_change_blocks-cb_1,
gs_change_blocks-cb_2,
gs_change_blocks-cb_3,
gs_change_blocks-cb_4,
gs_change_blocks-cb_5,
gs_change_blocks-cb_6,
gs_change_blocks-cb_7,
gs_change_blocks-cb_8,
gs_change_blocks-cb_9,
gs_change_blocks-cb_10,
gs_change_blocks-cb_11,
gs_change_blocks-cb_12,
gs_change_blocks-cb_13,
gs_change_blocks-cb_14,
gs_change_blocks-cb_15,
gs_change_blocks-cb_16,
gs_change_blocks-cb_17,
gs_change_blocks-cb_18,
gs_change_blocks-cb_19,
gs_change_blocks-cb_20,
gs_change_blocks-cb_21,
gs_change_blocks-cb_22,
gs_change_blocks-cb_23,
gs_change_blocks-cb_24,
gs_change_blocks-cb_25,
gs_change_blocks-cb_26,
gs_change_blocks-cb_27,
gs_change_blocks-cb_28,
gs_change_blocks-cb_30,
gs_change_blocks-cb_31,
gs_change_blocks-cb_32.
ENDFORM. " SET_CB_FLAGS
FORM set_old_data_records .
DATA: lr_p0000 TYPE REF TO data,
lr_p0001 TYPE REF TO data,
lr_p0002 TYPE REF TO data,
lr_p0006 TYPE REF TO data,
lr_p0008 TYPE REF TO data,
lr_p0009 TYPE REF TO data,
lr_t0009 TYPE REF TO data,
lr_p0019 TYPE REF TO data,
lr_p0032 TYPE REF TO data,
lr_p0033 TYPE REF TO data,
lr_t0033 TYPE REF TO data,
lr_p0041 TYPE REF TO data,
lr_p0105 TYPE REF TO data,
lr_p0185 TYPE REF TO data,
lr_p0461 TYPE REF TO data,
lr_p0462 TYPE REF TO data,
lr_p0463 TYPE REF TO data,
lr_p0464 TYPE REF TO data.
SORT gt_old_p0000 BY endda DESCENDING.
READ TABLE gt_old_p0000 INTO gs_old_p0000 INDEX 1.
SORT gt_old_p0001 BY endda DESCENDING.
READ TABLE gt_old_p0001 INTO gs_old_p0001 INDEX 1.
SORT gt_old_p0002 BY endda DESCENDING.
READ TABLE gt_old_p0002 INTO gs_old_p0002 INDEX 1.
SORT gt_old_p0006 BY endda DESCENDING.
READ TABLE gt_old_p0006 INTO gs_old_p0006 INDEX 1.
SORT gt_old_p0008 BY endda DESCENDING.
READ TABLE gt_old_p0008 INTO gs_old_p0008 INDEX 1.
SORT gt_old_p0009 BY subty endda DESCENDING.
SORT gt_old_p0019 BY endda DESCENDING.
READ TABLE gt_old_p0019 INTO gs_old_p0019 INDEX 1.
SORT gt_old_p0032 BY endda DESCENDING.
READ TABLE gt_old_p0032 INTO gs_old_p0032 INDEX 1.
SORT gt_old_p0033 BY endda DESCENDING.
READ TABLE gt_old_p0033 INTO gs_old_p0033 INDEX 1.
SORT gt_old_p0041 BY endda DESCENDING.
READ TABLE gt_old_p0041 INTO gs_old_p0041 INDEX 1.
SORT gt_old_p0105 BY endda DESCENDING.
READ TABLE gt_old_p0105 INTO gs_old_p0105 INDEX 1.
SORT gt_old_p0185 BY endda DESCENDING.
READ TABLE gt_old_p0185 INTO gs_old_p0185 INDEX 1.
SORT gt_old_p0461 BY endda DESCENDING.
READ TABLE gt_old_p0461 INTO gs_old_p0461 INDEX 1.
SORT gt_old_p0462 BY endda DESCENDING.
READ TABLE gt_old_p0462 INTO gs_old_p0462 INDEX 1.
SORT gt_old_p0463 BY endda DESCENDING.
READ TABLE gt_old_p0463 INTO gs_old_p0463 INDEX 1.
SORT gt_old_p0464 BY endda DESCENDING.
READ TABLE gt_old_p0464 INTO gs_old_p0464 INDEX 1.
CREATE DATA lr_p0000 TYPE ts_p0000.
CREATE DATA lr_p0001 TYPE ts_p0001.
CREATE DATA lr_p0002 TYPE ts_p0002.
CREATE DATA lr_p0006 TYPE ts_p0006.
CREATE DATA lr_p0008 TYPE ts_p0008.
CREATE DATA lr_p0009 TYPE ts_p0009.
CREATE DATA lr_t0009 TYPE tt_p0009.
CREATE DATA lr_p0019 TYPE ts_p0019.
CREATE DATA lr_p0032 TYPE ts_p0032.
CREATE DATA lr_p0033 TYPE ts_p0033.
CREATE DATA lr_t0033 TYPE tt_p0033.
CREATE DATA lr_p0041 TYPE ts_p0041.
CREATE DATA lr_p0105 TYPE ts_p0105.
CREATE DATA lr_p0185 TYPE ts_p0185.
CREATE DATA lr_p0461 TYPE ts_p0461.
CREATE DATA lr_p0462 TYPE ts_p0462.
CREATE DATA lr_p0463 TYPE ts_p0463.
CREATE DATA lr_p0464 TYPE ts_p0464.
ASSIGN lr_p0000->* TO <gs_p0000>.
ASSIGN lr_p0001->* TO <gs_p0001>.
ASSIGN lr_p0002->* TO <gs_p0002>.
ASSIGN lr_p0006->* TO <gs_p0006>.
ASSIGN lr_p0008->* TO <gs_p0008>.
ASSIGN lr_p0009->* TO <gs_p0009>.
ASSIGN lr_t0009->* TO <gt_p0009>.
ASSIGN lr_p0019->* TO <gs_p0019>.
ASSIGN lr_p0032->* TO <gs_p0032>.
ASSIGN lr_p0033->* TO <gs_p0033>.
ASSIGN lr_t0033->* TO <gt_p0033>.
ASSIGN lr_p0041->* TO <gs_p0041>.
ASSIGN lr_p0105->* TO <gs_p0105>.
ASSIGN lr_p0185->* TO <gs_p0185>.
ASSIGN lr_p0461->* TO <gs_p0461>.
ASSIGN lr_p0462->* TO <gs_p0462>.
ASSIGN lr_p0463->* TO <gs_p0463>.
ASSIGN lr_p0464->* TO <gs_p0464>.
<gs_p0000> = gs_old_p0000.
<gs_p0001> = gs_old_p0001.
<gs_p0002> = gs_old_p0002.
<gs_p0006> = gs_old_p0006.
<gs_p0008> = gs_old_p0008.
<gs_p0009> = gs_old_p0009.
<gt_p0009> = gt_old_p0009[].
<gs_p0019> = gs_old_p0019.
<gs_p0032> = gs_old_p0032.
<gs_p0033> = gs_old_p0033.
<gt_p0033> = gt_old_p0033[].
<gs_p0041> = gs_old_p0041.
<gs_p0105> = gs_old_p0105.
<gs_p0185> = gs_old_p0185.
<gs_p0461> = gs_old_p0461.
<gs_p0462> = gs_old_p0462.
<gs_p0463> = gs_old_p0463.
<gs_p0464> = gs_old_p0464.
ASSIGN gs_old_employee_data TO <gs_employee_data>.
ENDFORM. " SET_OLD_DATA_RECORDS
FORM set_new_data_records .
DATA: lr_p0000 TYPE REF TO data,
lr_p0001 TYPE REF TO data,
lr_p0002 TYPE REF TO data,
lr_p0006 TYPE REF TO data,
lr_p0008 TYPE REF TO data,
lr_p0009 TYPE REF TO data,
lr_t0009 TYPE REF TO data,
lr_p0019 TYPE REF TO data,
lr_p0032 TYPE REF TO data,
lr_p0033 TYPE REF TO data,
lr_t0033 TYPE REF TO data,
lr_p0041 TYPE REF TO data,
lr_p0105 TYPE REF TO data,
lr_p0185 TYPE REF TO data,
lr_p0461 TYPE REF TO data,
lr_p0462 TYPE REF TO data,
lr_p0463 TYPE REF TO data,
lr_p0464 TYPE REF TO data.
SORT gt_new_p0000 BY endda DESCENDING.
READ TABLE gt_new_p0000 INTO gs_new_p0000 INDEX 1.
SORT gt_new_p0001 BY endda DESCENDING.
READ TABLE gt_new_p0001 INTO gs_new_p0001 INDEX 1.
SORT gt_new_p0002 BY endda DESCENDING.
READ TABLE gt_new_p0002 INTO gs_new_p0002 INDEX 1.
SORT gt_new_p0006 BY endda DESCENDING.
READ TABLE gt_new_p0006 INTO gs_new_p0006 INDEX 1.
SORT gt_new_p0008 BY endda DESCENDING.
READ TABLE gt_new_p0008 INTO gs_new_p0008 INDEX 1.
SORT gt_new_p0009 BY subty endda DESCENDING.
SORT gt_new_p0019 BY endda DESCENDING.
READ TABLE gt_new_p0019 INTO gs_new_p0019 INDEX 1.
SORT gt_new_p0032 BY endda DESCENDING.
READ TABLE gt_new_p0032 INTO gs_new_p0032 INDEX 1.
SORT gt_new_p0033 BY endda DESCENDING.
READ TABLE gt_new_p0033 INTO gs_new_p0033 INDEX 1.
SORT gt_new_p0041 BY endda DESCENDING.
READ TABLE gt_new_p0041 INTO gs_new_p0041 INDEX 1.
SORT gt_new_p0105 BY endda DESCENDING.
READ TABLE gt_new_p0105 INTO gs_new_p0105 INDEX 1.
SORT gt_new_p0185 BY endda DESCENDING.
READ TABLE gt_new_p0185 INTO gs_new_p0185 INDEX 1.
SORT gt_new_p0461 BY endda DESCENDING.
READ TABLE gt_new_p0461 INTO gs_new_p0461 INDEX 1.
SORT gt_new_p0462 BY endda DESCENDING.
READ TABLE gt_new_p0462 INTO gs_new_p0462 INDEX 1.
SORT gt_new_p0463 BY endda DESCENDING.
READ TABLE gt_new_p0463 INTO gs_new_p0463 INDEX 1.
SORT gt_new_p0464 BY endda DESCENDING.
READ TABLE gt_new_p0464 INTO gs_new_p0464 INDEX 1.
CREATE DATA lr_p0000 TYPE ts_p0000.
CREATE DATA lr_p0001 TYPE ts_p0001.
CREATE DATA lr_p0002 TYPE ts_p0002.
CREATE DATA lr_p0006 TYPE ts_p0006.
CREATE DATA lr_p0008 TYPE ts_p0008.
CREATE DATA lr_p0009 TYPE ts_p0009.
CREATE DATA lr_t0009 TYPE tt_p0009.
CREATE DATA lr_p0019 TYPE ts_p0019.
CREATE DATA lr_p0032 TYPE ts_p0032.
CREATE DATA lr_p0033 TYPE ts_p0033.
CREATE DATA lr_t0033 TYPE tt_p0033.
CREATE DATA lr_p0041 TYPE ts_p0041.
CREATE DATA lr_p0105 TYPE ts_p0105.
CREATE DATA lr_p0185 TYPE ts_p0185.
CREATE DATA lr_p0461 TYPE ts_p0461.
CREATE DATA lr_p0462 TYPE ts_p0462.
CREATE DATA lr_p0463 TYPE ts_p0463.
CREATE DATA lr_p0464 TYPE ts_p0464.
ASSIGN lr_p0000->* TO <gs_p0000>.
ASSIGN lr_p0001->* TO <gs_p0001>.
ASSIGN lr_p0002->* TO <gs_p0002>.
ASSIGN lr_p0006->* TO <gs_p0006>.
ASSIGN lr_p0008->* TO <gs_p0008>.
ASSIGN lr_p0009->* TO <gs_p0009>.
ASSIGN lr_t0009->* TO <gt_p0009>.
ASSIGN lr_p0019->* TO <gs_p0019>.
ASSIGN lr_p0032->* TO <gs_p0032>.
ASSIGN lr_p0033->* TO <gs_p0033>.
ASSIGN lr_t0033->* TO <gt_p0033>.
ASSIGN lr_p0041->* TO <gs_p0041>.
ASSIGN lr_p0105->* TO <gs_p0105>.
ASSIGN lr_p0185->* TO <gs_p0185>.
ASSIGN lr_p0461->* TO <gs_p0461>.
ASSIGN lr_p0462->* TO <gs_p0462>.
ASSIGN lr_p0463->* TO <gs_p0463>.
ASSIGN lr_p0464->* TO <gs_p0464>.
<gs_p0000> = gs_new_p0000.
<gs_p0001> = gs_new_p0001.
<gs_p0002> = gs_new_p0002.
<gs_p0006> = gs_new_p0006.
<gs_p0008> = gs_new_p0008.
<gs_p0009> = gs_new_p0009.
<gt_p0009> = gt_new_p0009[].
<gs_p0019> = gs_new_p0019.
<gs_p0032> = gs_new_p0032.
<gs_p0033> = gs_new_p0033.
<gt_p0033> = gt_new_p0033[].
<gs_p0041> = gs_new_p0041.
<gs_p0105> = gs_new_p0105.
<gs_p0185> = gs_new_p0185.
<gs_p0461> = gs_new_p0461.
<gs_p0462> = gs_new_p0462.
<gs_p0463> = gs_new_p0463.
<gs_p0464> = gs_new_p0464.
ASSIGN gs_new_employee_data TO <gs_employee_data>.
ENDFORM. " SET_NEW_DATA_RECORDS
FORM get_dates .
DATA: lv_darnn TYPE c LENGTH 5 VALUE 'DARNN',
lv_datnn TYPE c LENGTH 5 VALUE 'DATNN',
lv_num TYPE n LENGTH 2.
FIELD-SYMBOLS: <lv_darnn> TYPE data,
<lv_datnn> TYPE data.
CLEAR: gv_date_01, "Original Hire Date
gv_date_06, "Ajusted Service Date
gv_date_07, "Last Day Worked
gv_date_08, "Last Day Paid
gv_date_09, "Rehire Date
gv_date_11, "Tax ID Expiry Date
gv_date_12, "Seniority Date
gv_date_98, "Hire Date
gv_date_99. "Termination Date
CHECK <gs_p0041> IS NOT INITIAL.
DO 12 TIMES.
lv_num = lv_num + 1.
lv_darnn+3(2) = lv_num.
lv_datnn+3(2) = lv_num.
ASSIGN COMPONENT lv_darnn OF STRUCTURE <gs_p0041> TO <lv_darnn>.
ASSIGN COMPONENT lv_datnn OF STRUCTURE <gs_p0041> TO <lv_datnn>.
CASE <lv_darnn>.
WHEN '01'.
MOVE <lv_datnn> TO gv_date_01. "Original Hire Date
WHEN '06'.
MOVE <lv_datnn> TO gv_date_06. "Ajusted Service Date
WHEN '07'.
MOVE <lv_datnn> TO gv_date_07. "Last Day Worked
WHEN '08'.
MOVE <lv_datnn> TO gv_date_08. "Last Day Paid
WHEN '09'.
MOVE <lv_datnn> TO gv_date_09. "Rehire Date
WHEN '11'.
MOVE <lv_datnn> TO gv_date_11. "Tax ID Expiry Date
WHEN '12'.
MOVE <lv_datnn> TO gv_date_12. "Seniority Date
WHEN OTHERS.
ENDCASE.
ENDDO.
ENDFORM. " GET_DATES
FORM get_comp_details .
FIELD-SYMBOLS: <lv_persg>,
<lv_persk>,
<lv_trfgb>,
<lv_trfar>.
CLEAR: gv_abart,
gv_trfkz,
gv_zeinh.
ASSIGN COMPONENT 'PERSG' OF STRUCTURE <gs_p0001> TO <lv_persg>.
ASSIGN COMPONENT 'PERSK' OF STRUCTURE <gs_p0001> TO <lv_persk>.
ASSIGN COMPONENT 'TRFGB' OF STRUCTURE <gs_p0008> TO <lv_trfgb>.
ASSIGN COMPONENT 'TRFAR' OF STRUCTURE <gs_p0008> TO <lv_trfar>.
SELECT SINGLE abart trfkz FROM t503 INTO (gv_abart, gv_trfkz)
WHERE persg EQ <lv_persg>
AND persk EQ <lv_persk>.
CALL FUNCTION 'RP_ZEINH_GET'
EXPORTING
p_molga = '07'
p_trfgb = <lv_trfgb>
p_trfar = <lv_trfar>
p_trfkz = gv_trfkz
p_date = gv_frbeg
IMPORTING
p_zeinh = gv_zeinh
EXCEPTIONS
no_entry_t549r = 1
illegal_zeinh = 2
OTHERS = 3.
ENDFORM. " GET_COMP_DETAILS
FORM get_bank_details .
FIELD-SYMBOLS: <lv_subty>, <lv_begda>, <lv_bankl>, <lv_bankn>, <lv_zlsch>, <lv_betrg>.
CLEAR gs_bank.
CHECK <gt_p0009> IS NOT INITIAL.
LOOP AT <gt_p0009> ASSIGNING <gs_p0009>.
ASSIGN COMPONENT 'SUBTY' OF STRUCTURE <gs_p0009> TO <lv_subty>.
IF <lv_subty> EQ '0'.
ASSIGN COMPONENT 'BEGDA' OF STRUCTURE <gs_p0009> TO <lv_begda>.
ASSIGN COMPONENT 'BANKL' OF STRUCTURE <gs_p0009> TO <lv_bankl>.
ASSIGN COMPONENT 'BANKN' OF STRUCTURE <gs_p0009> TO <lv_bankn>.
ASSIGN COMPONENT 'ZLSCH' OF STRUCTURE <gs_p0009> TO <lv_zlsch>.
MOVE <lv_begda> TO gs_bank-effective_date_p.
IF <lv_zlsch> EQ 'C'.
MOVE 'C' TO gs_bank-payment_method.
EXIT.
ELSE.
MOVE 'D' TO gs_bank-payment_method.
ENDIF.
MOVE <lv_bankl>+1(3) TO gs_bank-primary_bank.
MOVE <lv_bankl>+4(5) TO gs_bank-primary_branch.
MOVE <lv_bankn> TO gs_bank-primary_accnt_no.
EXIT.
ENDIF.
ENDLOOP.
IF sy-subrc NE 0.
MOVE 'C' TO gs_bank-payment_method.
ENDIF.
LOOP AT <gt_p0009> ASSIGNING <gs_p0009>.
ASSIGN COMPONENT 'SUBTY' OF STRUCTURE <gs_p0009> TO <lv_subty>.
IF <lv_subty> EQ '1'.
ASSIGN COMPONENT 'BEGDA' OF STRUCTURE <gs_p0009> TO <lv_begda>.
ASSIGN COMPONENT 'BANKL' OF STRUCTURE <gs_p0009> TO <lv_bankl>.
ASSIGN COMPONENT 'BANKN' OF STRUCTURE <gs_p0009> TO <lv_bankn>.
ASSIGN COMPONENT 'BETRG' OF STRUCTURE <gs_p0009> TO <lv_betrg>.
MOVE <lv_begda> TO gs_bank-effective_date_s.
MOVE <lv_bankl>+1(3) TO gs_bank-secondary_bank.
MOVE <lv_bankl>+4(5) TO gs_bank-secondary_branch.
MOVE <lv_bankn> TO gs_bank-second_accnt_no.
MOVE <lv_betrg> TO gs_bank-second_dep_amnt.
SHIFT gs_bank-second_dep_amnt LEFT DELETING LEADING space.
EXIT.
ENDIF.
ENDLOOP.
ENDFORM. " GET_BANK_DETAILS
FORM get_exemptions .
DATA: lv_tax TYPE c LENGTH 5 VALUE 'TAX00',
lv_exi TYPE c LENGTH 5 VALUE 'EXI00',
lv_num TYPE n LENGTH 2.
FIELD-SYMBOLS: <lv_tax>, <lv_exi>.
CLEAR gs_exemptions.
DO 15 TIMES.
MOVE sy-index TO lv_num.
MOVE lv_num TO: lv_tax+3(2), lv_exi+3(2).
ASSIGN COMPONENT lv_tax OF STRUCTURE <gs_p0464> TO <lv_tax>.
ASSIGN COMPONENT lv_exi OF STRUCTURE <gs_p0464> TO <lv_exi>.
CASE <lv_tax>.
WHEN 'FIT'.
MOVE <lv_exi> TO gs_exemptions-fed.
WHEN 'CPP' OR 'QPP'.
MOVE <lv_exi> TO gs_exemptions-cpp.
WHEN 'EI'.
MOVE <lv_exi> TO gs_exemptions-ei.
WHEN OTHERS.
ENDCASE.
ENDDO.
ENDFORM. " GET_EXEMPTIONS
FORM get_wfn_data USING fv_all.
FIELD-SYMBOLS: <lv_return>.
CLEAR <gs_employee_data>.
LOOP AT go_structdescr_ed->components INTO gs_component.
ASSIGN COMPONENT gs_component-name OF STRUCTURE <gs_employee_data> TO <lv_return>.
PERFORM (gs_component-name) IN PROGRAM zhro_adp_wfn_ca IF FOUND USING <lv_return>.
IF fv_all EQ gc_all.
CONCATENATE '_' gs_component-name INTO gs_component-name.
PERFORM (gs_component-name) IN PROGRAM zhro_adp_wfn_ca IF FOUND USING <lv_return>.
ENDIF.
ENDLOOP.
ENDFORM. " GET_WFN_DATA
FORM check_for_bank_deletion .
DATA: lv_old_subty TYPE subty,
lv_new_subty TYPE subty,
lv_old_endda TYPE endda,
lv_new_endda TYPE endda,
lv_eff_date TYPE d,
lv_delete TYPE c.
LOOP AT gt_old_p0009 INTO gs_old_p0009 WHERE subty EQ '1'. "Second bank
MOVE gs_old_p0009-subty TO lv_old_subty.
MOVE gs_old_p0009-endda TO lv_old_endda.
EXIT.
ENDLOOP.
LOOP AT gt_new_p0009 INTO gs_new_p0009 WHERE subty EQ '1'. "Second bank
MOVE gs_new_p0009-subty TO lv_new_subty.
MOVE gs_new_p0009-endda TO lv_new_endda.
EXIT.
ENDLOOP.
IF ( lv_old_subty EQ '1' AND lv_new_subty EQ '1' AND
lv_new_endda LT lv_old_endda AND lv_new_endda GE gv_frbeg AND lv_new_endda LT gv_frend ).
lv_delete = 'X'.
lv_eff_date = lv_new_endda + 1. "Effective date of delimitation
ELSEIF ( lv_old_subty EQ '1' AND lv_new_subty NE '1' ).
lv_delete = 'X'.
lv_eff_date = gv_frbeg. "Effective date of delimitation
ENDIF.
IF lv_delete EQ 'X'.
MOVE lv_eff_date TO gs_bank-effective_date_s.
MOVE '~' TO : gs_bank-secondary_bank,
gs_bank-secondary_branch,
gs_bank-second_accnt_no,
gs_bank-second_dep_amnt.
ENDIF.
ENDFORM. " CHECK_FOR_BANK_DELETION
FORM check_for_changes .
PERFORM check_for_new_action.
PERFORM check_for_field_changes.
ENDFORM. " CHECK_FOR_CHANGES
FORM check_for_new_action .
IF gs_old_p0000-begda NE gs_new_p0000-begda. "New action
MOVE gs_new_p0000-begda TO gv_effective_date. "Store the effective date of the new action
IF gs_new_p0000-massn EQ '7F'.
gv_effective_date = gv_effective_date - 1.
ENDIF.
CASE gs_new_p0000-massn.
WHEN '7A' OR "New Hire
'7G' OR "Rehire
'7F' OR '7H' OR '7R'. "Termination
MOVE '1' TO gs_export_flags-ed_export.
MOVE 'X' TO gs_change_blocks-cb_27. "Time block
WHEN '7I' OR '7K' OR "Leave of Absence
'7J' OR '7N' OR "Return from Leave of Absence
'7D'. "Pay Rate Change
MOVE '1' TO gs_export_flags-ed_export.
WHEN '7C'.
CASE gs_new_p0000-massg.
WHEN '03' OR '04' OR '05'. "Pay Rate Change
MOVE '1' TO gs_export_flags-ed_export.
WHEN OTHERS.
ENDCASE.
WHEN '7E'.
MOVE '1' TO gs_export_flags-ed_export.
WHEN OTHERS.
ENDCASE.
ENDIF.
ENDFORM. " CHECK_FOR_NEW_ACTION
FORM check_for_field_changes .
DATA: lv_sname TYPE c LENGTH 30. "Subroutine name
FIELD-SYMBOLS: <lv_old>, <lv_new>.
LOOP AT go_structdescr_ed->components INTO gs_component.
ASSIGN COMPONENT gs_component-name OF STRUCTURE gs_old_employee_data TO <lv_old>.
ASSIGN COMPONENT gs_component-name OF STRUCTURE gs_new_employee_data TO <lv_new>.
IF <lv_new> NE <lv_old>.
MOVE '1' TO gs_export_flags-ed_export.
CONCATENATE gs_component-name '_EFF_DATE' INTO lv_sname.
IF gv_effective_date IS INITIAL.
PERFORM (lv_sname) IN PROGRAM zhro_adp_wfn_ca IF FOUND CHANGING gv_effective_date.
ENDIF.
CONCATENATE gs_component-name '_CB' INTO lv_sname.
PERFORM (lv_sname) IN PROGRAM zhro_adp_wfn_ca IF FOUND.
ENDIF.
ENDLOOP.
ENDFORM. " CHECK_FOR_FIELD_CHANGES
FORM get_comp_change_date CHANGING fv_comp_change_date.
DATA: lv_date TYPE d.
CLEAR fv_comp_change_date.
CHECK gs_old_p0008 IS NOT INITIAL OR gs_old_p0001 IS NOT INITIAL.
IF gs_old_p0008-bet01 NE gs_new_p0008-bet01.
MOVE gs_new_p0008-begda TO lv_date.
ENDIF.
IF gs_old_p0008-divgv NE gs_new_p0008-divgv.
IF gs_new_p0008-begda GT lv_date.
MOVE gs_new_p0008-begda TO lv_date.
ENDIF.
ENDIF.
IF gs_old_employee_data-rate_type NE gs_new_employee_data-rate_type.
IF gs_new_p0001-begda GT lv_date.
MOVE gs_new_p0001-begda TO lv_date.
ENDIF.
ENDIF.
MOVE lv_date TO fv_comp_change_date.
ENDFORM. " GET_COMP_CHANGE_DATE
FORM get_transfers CHANGING fv_same_tax_form
fv_transfer_date.
DATA: lv_date TYPE d.
CLEAR: fv_same_tax_form, fv_transfer_date.
IF gs_old_employee_data-cra_pa_rq_id IS NOT INITIAL.
IF gs_old_employee_data-cra_pa_rq_id NE gs_new_employee_data-cra_pa_rq_id.
MOVE gs_new_p0033-begda TO lv_date.
MOVE 'N' TO fv_same_tax_form.
ENDIF.
ENDIF.
IF gs_old_employee_data-pay_group IS NOT INITIAL.
IF gs_old_employee_data-pay_group NE gs_new_employee_data-pay_group.
IF gs_old_employee_data-rate_amount NE gs_old_employee_data-rate_amount.
MOVE 'N' TO fv_same_tax_form.
ELSE.
MOVE 'Y' TO fv_same_tax_form.
ENDIF.
IF gs_new_p0001-begda GT lv_date.
MOVE gs_new_p0001-begda TO lv_date.
ENDIF.
ENDIF.
ENDIF.
IF gs_old_employee_data-prov_of_emplymnt IS NOT INITIAL.
IF gs_old_employee_data-prov_of_emplymnt NE gs_new_employee_data-prov_of_emplymnt. "Change in Province of Employment
IF gs_new_p0461-begda GT lv_date.
MOVE gs_new_p0461-begda TO lv_date.
ENDIF.
MOVE 'N' TO fv_same_tax_form.
ENDIF.
ENDIF.
MOVE lv_date TO fv_transfer_date.
ENDFORM. " GET_TRANSFERS
FORM fill_wfn_records .
ASSIGN gs_employee_data TO <gs_employee_data>.
CLEAR: gs_employee_data, gs_line_out.
IF gs_export_flags-ed_export EQ '1'.
PERFORM get_wfn_data USING gc_all.
APPEND gs_employee_data TO gt_employee_data.
PERFORM convert_to_csv CHANGING gs_line_out.
PERFORM append_to_file_section.
gv_number_of_records = gv_number_of_records + 1.
gv_num_exported_pernr = gv_num_exported_pernr + 1.
ENDIF.
ENDFORM. " FILL_WFN_RECORDS
FORM write_to_file .
DATA: lv_lines TYPE i.
APPEND LINES OF : gt_file_1 TO gt_file_out,
gt_file_2 TO gt_file_out,
gt_file_3 TO gt_file_out,
gt_file_4 TO gt_file_out,
gt_file_5 TO gt_file_out.
DESCRIBE TABLE gt_file_out LINES lv_lines.
CHECK lv_lines GT 1.
IF p_pc EQ 'X'.
PERFORM create_file_on_pc USING p_pfile gt_file_out.
ELSEIF p_srv EQ 'X'.
PERFORM create_file_on_srv USING p_sfile p_backup gt_file_out.
ENDIF.
ENDFORM. " WRITE_TO_FILE
FORM validate_employee .
IF gt_new_p0000[] IS INITIAL.
SUBTRACT 1 FROM gv_num_selected_pernr.
REJECT.
ENDIF.
PERFORM get_data_to_validate.
PERFORM check_for_actions_to_skip.
PERFORM check_error_e013.
PERFORM check_termination.
PERFORM check_error_e001.
PERFORM check_error_e003.
PERFORM check_error_e004.
PERFORM check_error_e005_e006.
PERFORM check_error_e007_e008.
PERFORM check_error_e009.
PERFORM check_error_e010_e011.
PERFORM check_error_e012.
PERFORM check_error_w001.
PERFORM check_error_w003.
PERFORM check_error_w004.
PERFORM check_error_w005.
PERFORM check_error_w006.
PERFORM check_error_w007.
PERFORM check_error_w008.
PERFORM check_error_w012.
PERFORM clear_globals.
ENDFORM. " VALIDATE_EMPLOYEE
FORM get_num_time_off_records CHANGING fv_num.
IF gs_new_p0033-aus04 IS NOT INITIAL.
fv_num = fv_num + 1.
ENDIF.
IF gs_new_p0033-aus05 IS NOT INITIAL.
fv_num = fv_num + 1.
ENDIF.
IF gs_new_p0033-aus06 IS NOT INITIAL.
fv_num = fv_num + 1.
ENDIF.
ENDFORM. " GET_NUM_TIME_OFF_RECORDS
FORM action_based_validation .
IF gs_new_p0000-massn NE '7A' AND "New Hire
gs_new_p0000-massn NE '7G'. "Rehire
CLEAR: gs_change_blocks-cb_14. "Addresses
ELSE.
MOVE 'X' TO : gs_change_blocks-cb_20, gs_change_blocks-cb_21. "Send Fed/Prov Tax Credit Type on Hire/Re-hire
ENDIF.
ENDFORM. " ACTION_BASED_VALIDATION
FORM data_collection .
PERFORM init_globals.
PERFORM get_old_data.
IF p_cp EQ 'X'. "Current period for all payroll areas
PERFORM get_current_period CHANGING gv_frper gv_frbeg gv_frend.
ENDIF.
PERFORM get_new_data.
ENDFORM. " DATA_COLLECTION
FORM check_error_e001 .
IF gs_new_p0002-perid EQ '000000000'.
PERFORM error
USING
'E'
'E001'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_E001
FORM check_error_e003 .
IF gs_new_p0185-icnum IS INITIAL.
PERFORM error
USING
'E'
'E003'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_E003
FORM check_error_e004 .
IF gs_new_p0001-pernr IS INITIAL AND gs_new_p0032-pnalt IS INITIAL.
PERFORM error
USING
'E'
'E004'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_E004
FORM check_error_e005_e006 .
DATA: lv_pernr TYPE pernr_d,
lv_begda TYPE begda,
lv_endda TYPE endda.
DATA: lt_0185 TYPE STANDARD TABLE OF p0185,
ls_0185 TYPE p0185.
IF gs_new_p0001-yysupervisor_id IS INITIAL.
PERFORM error
USING
'E'
'E005'
space
space
space
space.
ENDIF.
lv_pernr = gs_new_p0001-yysupervisor_id.
lv_begda = gs_new_p0001-begda.
lv_endda = gs_new_p0001-endda.
CALL FUNCTION 'HR_READ_INFOTYPE'
EXPORTING
pernr = lv_pernr
infty = '0185'
begda = lv_begda
endda = lv_endda
TABLES
infty_tab = lt_0185
EXCEPTIONS
infty_not_found = 1
OTHERS = 2.
IF sy-subrc EQ 0.
SORT lt_0185 DESCENDING BY endda.
LOOP AT lt_0185 INTO ls_0185
WHERE ictyp EQ 'Z3'.
EXIT.
ENDLOOP.
IF sy-subrc NE 0 OR ls_0185-icnum IS INITIAL.
PERFORM error
USING
'E'
'E006'
space
space
space
space.
ENDIF.
ENDIF.
ENDFORM. " CHECK_ERROR_E005_E006
FORM check_error_e007_e008 .
IF gs_new_p0008-divgv IS INITIAL.
PERFORM error
USING
'E'
'E007'
space
space
space
space.
ENDIF.
IF gs_new_p0008-bet01 IS INITIAL.
PERFORM error
USING
'E'
'E008'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_E007_E008
FORM check_error_e009 .
CHECK gs_new_p0000-begda NE gs_old_p0000-begda. "New action
CASE gs_new_p0000-massn.
WHEN '7D'. "Pay Rate Change
IF gs_old_p0008-bet01 EQ gs_new_p0008-bet01.
PERFORM error
USING
'E'
'E009'
space
space
space
space.
ENDIF.
WHEN '7C'.
CASE gs_new_p0000-massg.
WHEN '03' OR '04' OR '05'. "Pay Rate Change
IF gs_old_p0008-bet01 EQ gs_new_p0008-bet01.
PERFORM error
USING
'E'
'E009'
space
space
space
space.
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDCASE.
ENDFORM. " CHECK_ERROR_E009
FORM check_error_e010_e011 .
DATA: lv_darnn TYPE c LENGTH 5 VALUE 'DARNN',
lv_datnn TYPE c LENGTH 5 VALUE 'DATNN',
lv_num TYPE n LENGTH 2,
lv_date_07 TYPE dardt, "Last Day Worked
lv_date_08 TYPE dardt. "Last Day Paid
FIELD-SYMBOLS: <lv_darnn> TYPE data,
<lv_datnn> TYPE data.
DO 12 TIMES.
lv_num = lv_num + 1.
lv_darnn+3(2) = lv_num.
lv_datnn+3(2) = lv_num.
ASSIGN COMPONENT lv_darnn OF STRUCTURE gs_new_p0041 TO <lv_darnn>.
ASSIGN COMPONENT lv_datnn OF STRUCTURE gs_new_p0041 TO <lv_datnn>.
CASE <lv_darnn>.
WHEN '07'.
MOVE <lv_datnn> TO lv_date_07. "Last Day Worked
WHEN '08'.
MOVE <lv_datnn> TO lv_date_08. "Last Day Paid
WHEN OTHERS.
ENDCASE.
ENDDO.
CASE gs_new_p0000-massn.
WHEN '7F' OR '7H' OR '7R'. "Termination
IF lv_date_08 IS INITIAL.
PERFORM error
USING
'E'
'E010'
space
space
space
space.
ENDIF.
IF lv_date_07 IS INITIAL.
PERFORM error
USING
'E'
'E011'
space
space
space
space.
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDFORM. " CHECK_ERROR_E010_E011
FORM check_error_e012 .
CASE gs_new_p0001-bukrs.
WHEN 'CA10' OR 'CA70'. "T56B
IF gs_new_p0033-aus01 EQ '0'.
PERFORM error
USING
'E'
'E012'
space
space
space
space.
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDFORM. " CHECK_ERROR_E012
FORM check_error_e013 .
IF gs_new_p0000-massn(1) NE '7'.
PERFORM error
USING
'E'
'E013'
gs_new_p0000-massn
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_E013
FORM check_error_w001 .
DATA: lv_darnn TYPE c LENGTH 5 VALUE 'DARNN',
lv_datnn TYPE c LENGTH 5 VALUE 'DATNN',
lv_num TYPE n LENGTH 2,
lv_date_06 TYPE dardt. "Adjusted Service Date
FIELD-SYMBOLS: <lv_darnn> TYPE data,
<lv_datnn> TYPE data.
DO 12 TIMES.
lv_num = lv_num + 1.
lv_darnn+3(2) = lv_num.
lv_datnn+3(2) = lv_num.
ASSIGN COMPONENT lv_darnn OF STRUCTURE gs_new_p0041 TO <lv_darnn>.
ASSIGN COMPONENT lv_datnn OF STRUCTURE gs_new_p0041 TO <lv_datnn>.
CASE <lv_darnn>.
WHEN '06'.
MOVE <lv_datnn> TO lv_date_06. "Adjusted Service Date
WHEN OTHERS.
ENDCASE.
ENDDO.
IF lv_date_06 IS INITIAL.
PERFORM error
USING
'W'
'W001'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W001
FORM check_error_w002 .
IF gs_new_p0002-famst IS INITIAL.
PERFORM error
USING
'W'
'W002'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W002
FORM get_data_to_validate .
SORT gt_new_p0000 BY endda DESCENDING.
READ TABLE gt_new_p0000 INTO gs_new_p0000 INDEX 1.
SORT gt_old_p0000 BY endda DESCENDING.
READ TABLE gt_old_p0000 INTO gs_old_p0000 INDEX 1.
SORT gt_new_p0001 BY endda DESCENDING.
READ TABLE gt_new_p0001 INTO gs_new_p0001 INDEX 1.
SORT gt_new_p0002 BY endda DESCENDING.
READ TABLE gt_new_p0002 INTO gs_new_p0002 INDEX 1.
SORT gt_old_p0008 BY endda DESCENDING.
READ TABLE gt_old_p0008 INTO gs_old_p0008 INDEX 1.
SORT gt_new_p0008 BY endda DESCENDING.
READ TABLE gt_new_p0008 INTO gs_new_p0008 INDEX 1.
SORT gt_new_p0032 BY endda DESCENDING.
READ TABLE gt_new_p0032 INTO gs_new_p0032 INDEX 1.
SORT gt_new_p0033 BY endda DESCENDING.
READ TABLE gt_new_p0033 INTO gs_new_p0033 INDEX 1.
SORT gt_new_p0041 BY endda DESCENDING.
READ TABLE gt_new_p0041 INTO gs_new_p0041 INDEX 1.
SORT gt_new_p0105 BY endda DESCENDING.
READ TABLE gt_new_p0105 INTO gs_new_p0105 INDEX 1.
SORT gt_new_p0185 BY endda DESCENDING.
READ TABLE gt_new_p0185 INTO gs_new_p0185 INDEX 1.
SORT gt_new_p0461 BY endda DESCENDING.
READ TABLE gt_new_p0461 INTO gs_new_p0461 INDEX 1.
SORT gt_new_p0462 BY endda DESCENDING.
READ TABLE gt_new_p0462 INTO gs_new_p0462 INDEX 1.
SORT gt_new_p0463 BY endda DESCENDING.
READ TABLE gt_new_p0463 INTO gs_new_p0463 INDEX 1.
SORT gt_new_p0464 BY endda DESCENDING.
READ TABLE gt_new_p0464 INTO gs_new_p0464 INDEX 1.
ENDFORM. " GET_DATA_TO_VALIDATE
FORM clear_globals .
CLEAR: gs_new_p0000,
gs_old_p0000,
gs_new_p0001,
gs_new_p0002,
gs_old_p0008,
gs_new_p0008,
gs_new_p0032,
gs_new_p0033,
gs_new_p0041,
gs_new_p0105,
gs_new_p0185,
gs_new_p0461,
gs_new_p0462,
gs_new_p0463,
gs_new_p0464.
ENDFORM. " CLEAR_GLOBALS
FORM check_error_w003 .
IF gs_new_p0002-sprsl IS INITIAL.
PERFORM error
USING
'W'
'W003'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W003
FORM check_error_w004 .
IF gs_new_p0002-gesch IS INITIAL.
PERFORM error
USING
'W'
'W004'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W004
FORM check_error_w005 .
CASE gs_new_p0000-massn.
WHEN '7A' OR "New Hire
'7G'. "Rehire
IF gt_new_p0006[] IS INITIAL.
PERFORM error
USING
'W'
'W005'
space
space
space
space.
ENDIF.
ENDCASE.
ENDFORM. " CHECK_ERROR_W005
FORM check_error_w006 .
IF gs_new_p0105-usrid_long IS INITIAL.
PERFORM error
USING
'W'
'W006'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W006
FORM check_error_w007 .
CASE gs_new_p0000-massn.
WHEN '7A' OR "New Hire
'7G'. "Rehire
IF gt_new_p0009[] IS INITIAL.
PERFORM error
USING
'W'
'W007'
space
space
space
space.
ENDIF.
ENDCASE.
ENDFORM. " CHECK_ERROR_W007
FORM check_error_w008 .
IF gs_new_p0461 IS INITIAL.
PERFORM error
USING
'W'
'W008'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W008
FORM check_error_w009 .
IF gs_new_p0462 IS INITIAL.
PERFORM error
USING
'W'
'W009'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W009
FORM check_error_w010 .
IF gs_new_p0463 IS INITIAL.
PERFORM error
USING
'W'
'W010'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W010
FORM check_error_w011 .
IF gs_new_p0464 IS INITIAL.
PERFORM error
USING
'W'
'W011'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W011
FORM check_error_w012 .
IF gs_new_p0033 IS INITIAL.
PERFORM error
USING
'W'
'W012'
space
space
space
space.
ENDIF.
ENDFORM. " CHECK_ERROR_W012
FORM check_termination .
IF ( gs_old_p0000-massn EQ '7F' AND gs_new_p0000-massn EQ '7F' ) OR
( gs_old_p0000-massn EQ '7H' AND gs_new_p0000-massn EQ '7H' ) OR
( gs_old_p0000-massn EQ '7R' AND gs_new_p0000-massn EQ '7R' ).
SUBTRACT 1 FROM gv_num_selected_pernr.
REJECT.
ENDIF.
IF gt_old_p0000[] IS INITIAL AND
( gs_new_p0000-massn EQ '7F' OR gs_new_p0000-massn EQ '7H' OR gs_new_p0000-massn EQ '7R' ).
SUBTRACT 1 FROM gv_num_selected_pernr.
REJECT.
ENDIF.
ENDFORM. " CHECK_TERMINATION
FORM check_for_actions_to_skip .
IF gs_new_p0000-massn(1) EQ 'X'.
SUBTRACT 1 FROM gv_num_selected_pernr.
REJECT.
ENDIF.
ENDFORM. " CHECK_FOR_ACTIONS_TO_SKIP
FORM append_to_file_section .
IF gs_old_p0001-yymanager_flag IS NOT INITIAL AND gs_new_p0001-yymanager_flag IS NOT INITIAL.
IF ( gs_old_p0001-yymanager_flag NE gs_new_p0001-yymanager_flag ) AND
gs_new_p0000-stat2 EQ 3.
IF gs_new_p0001-yymanager_flag EQ 'Y'.
APPEND gs_line_out TO gt_file_1.
ELSEIF gs_old_p0001-yymanager_flag EQ 'Y' AND gs_new_p0001-yymanager_flag EQ 'N'.
APPEND gs_line_out TO gt_file_3.
ENDIF.
ELSEIF ( gs_old_p0000-stat2 NE gs_new_p0000-stat2 ) AND
gs_new_p0000-stat2 NE 3.
IF gs_new_p0001-yymanager_flag EQ 'N'.
APPEND gs_line_out TO gt_file_4.
ELSEIF gs_new_p0001-yymanager_flag EQ 'Y'.
APPEND gs_line_out TO gt_file_5.
ENDIF.
ELSE.
APPEND gs_line_out TO gt_file_2.
ENDIF.
ELSE.
IF gs_new_p0001-yymanager_flag EQ 'Y'. "New manager hire.
APPEND gs_line_out TO gt_file_1.
ELSE.
APPEND gs_line_out TO gt_file_2.
ENDIF.
ENDIF.
ENDFORM. " APPEND_TO_FILE_SECTION
|


Thank you for your submission.
We appreciate you taking the time to complete this certification. We will follow up with you shortly.


Osiris
- Cool epithet: Life of the Sun god
- Biography in form of a song: What doesn’t kill you
- Favourite movie: Living dead
- Alternative career: Magician
- Philosophy: Carpe diem (NOT)
I am manifestor in Matter of Those whose Abode is in the Invisible
I am purified, I stand upon the Universe
I am its reconciler with the Eternal Gods
I am the Perfector of Matter
And without me, the Universe is not.
- Osiris (a very long time ago)
Hands down, he was by far one of the most relevant gods in Egyptian history and the original specimen for the resurrection element that most religions feature today. Fun fact, even though he is a major Egyptian deity, Osiris was not even of Egyptian descent; we cannot categorically tell you where he was from but there you have it. As the story has it, Osiris was the son of Geb (Egyptian god of Earth) and Nut (Egyptian sky goddess), he had other siblings and they feature vividly in his story. Apparently, his popularity as a pharaoh was not sitting well with his brother Set, so Set decided to tread the path what many-a-jealous brother after him walked (we see you Cain). Not only did he kill Osiris, but there was some butchering and mutilation involved, after which he scattered the parts in the River Nile. Telling you what happened next in detail would encroach too much on Isis story, so in a nutshell, she resurrected him and they went on to have a kick-ass baby boy. They gave us the impression that he might have been more dead than alive because he ended up going down in history as the god of the land of the dead and regeneration. He is also associated with order, agriculture and winemaking. Also, every dead Pharoah and later on commoner, was associated with Osiris in death.


--- layout: paper title: Publications --- Coreference Based Event-Argument Relation Extraction on Biomedical Text, , Proceedings of the Fourth International Symposium on Semantic Mining in Biomedicine (SMBM) 2010 Best Paper Award
@inproceedings{yoshikawa10coreference, webnote={Best Paper Award}, year={2010}, author={Katsumasa Yoshikawa and Sebastian Riedel and Tsutomu Hirao and Masayuki Asahara and Yuji Matsumoto}, booktitle={Proceedings of the Fourth International Symposium on Semantic Mining in Biomedicine (SMBM)}, title={Coreference Based Event-Argument Relation Extraction on Biomedical Text}, }


Platform of Trust
Developer portal
Docs of Trust
Book an online meeting
Fast and reliable code example generation for your API documentation
Generations: [TryCountValue]
Validations: [ValidationsValue], from which:
- [SuccessCountValue] successful
- [FailedCountValue] failed


Resend
You can resend and change requests that have previously been sent by your browser or ZAP.
This applies to all of the requests you can see in the HUD, whether via the History tab,
the Sites tree or one of the alerts.
When you display a request you will see 2 options:
Replay in Console
This will submit the request, along with any of your changes, and show the response in the Response tab.
This allows you to try different inputs and see how it affects the raw HTML.
Replay in Browser
This will submit the request, again along with any of your changes, but, in this case, the response will be
displayed in the browser as HTML. This works for POST requests as well as GET requests.


Ocean [ai01], ocean, in Crystal Sea
Last updated Turn #138
Ocean [ai01], ocean, in Crystal Sea
------------------------------------------------------------------------
2: Sirocco Traveller [ja8y], ship, 10 hulls, 1 rowing port, 30 sails,
2: 4% damaged, arrived from Ocean [ai00], owner:
2: Toulouse [h1q], Pen, with one peasant, one worker, 32 sailors,
2: accompanied by:
2: Audrey [j9v], Pen, with 38 lt. xbowmen, three skirmishers,
2: three riding horses
2: Cindy [z1c], Pen, with 26 pikemen
2: Herbal Harriet [w3d], refugee, prisoner
2: Old man [hn0y], refugee, prisoner
3: Sirocco Traveller [ja8y], ship, 10 hulls, 1 rowing port, 30 sails,
3: 4% damaged, departed for Ocean [ah01].
30: It is no longer windy.
Routes leaving Ocean:
North, to Ocean [ah01], 6 days
East, to Ocean [ai02], 6 days
South, to Ocean [aj01], 6 days
West, to Ocean [ai00], 6 days
Inner locations:
Island [aa5w], island, 1 day, owner:
Cyclops [jn7z], cyclops, number: 14


{% extends "layout.html" %} {% block page_title %} Money Claims Prototype {% endblock %} {% block content %} BETA This is a new service – your feedback will help us to improve it. Back Do you want more time to respond? You can request an extra 14 days to prepare your case. Do you want more time to respond? Yes, I need an extra 14 days You'll have until to submit your response No, I don't need more time {% endblock %}
BETA This is a new service – your feedback will help us to improve it.
You can request an extra 14 days to prepare your case.
You'll have until to submit your response


| 1 | /* | |
| 2 | * Licensed to the Apache Software Foundation (ASF) under one or more | |
| 3 | * contributor license agreements. See the NOTICE file distributed with | |
| 4 | * this work for additional information regarding copyright ownership. | |
| 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 | |
| 6 | * (the "License"); you may not use this file except in compliance with | |
| 7 | * the License. You may obtain a copy of the License at | |
| 8 | * | |
| 9 | * http://www.apache.org/licenses/LICENSE-2.0 | |
| 10 | * | |
| 11 | * Unless required by applicable law or agreed to in writing, software | |
| 12 | * distributed under the License is distributed on an "AS IS" BASIS, | |
| 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| 14 | * See the License for the specific language governing permissions and | |
| 15 | * limitations under the License. | |
| 16 | */ | |
| 17 | package org.apache.commons.math3.analysis.interpolation; | |
| 18 | ||
| 19 | import org.apache.commons.math3.analysis.MultivariateFunction; | |
| 20 | import org.apache.commons.math3.exception.NotPositiveException; | |
| 21 | import org.apache.commons.math3.exception.NotStrictlyPositiveException; | |
| 22 | import org.apache.commons.math3.exception.NoDataException; | |
| 23 | import org.apache.commons.math3.exception.DimensionMismatchException; | |
| 24 | import org.apache.commons.math3.exception.NullArgumentException; | |
| 25 | import org.apache.commons.math3.random.UnitSphereRandomVectorGenerator; | |
| 26 | ||
| 27 | /** | |
| 28 | * Interpolator that implements the algorithm described in | |
| 29 | * William Dudziak's | |
| 30 | * MS thesis. | |
| 31 | * | |
| 32 | * @since 2.1 | |
| 33 | * @version $Id$ | |
| 34 | */ | |
| 35 | public class MicrosphereInterpolator | |
| 36 | implements MultivariateInterpolator { | |
| 37 | /** | |
| 38 | * Default number of surface elements that composes the microsphere. | |
| 39 | */ | |
| 40 | public static final int DEFAULT_MICROSPHERE_ELEMENTS = 2000; | |
| 41 | /** | |
| 42 | * Default exponent used the weights calculation. | |
| 43 | */ | |
| 44 | public static final int DEFAULT_BRIGHTNESS_EXPONENT = 2; | |
| 45 | /** | |
| 46 | * Number of surface elements of the microsphere. | |
| 47 | */ | |
| 48 | private final int microsphereElements; | |
| 49 | /** | |
| 50 | * Exponent used in the power law that computes the weights of the | |
| 51 | * sample data. | |
| 52 | */ | |
| 53 | private final int brightnessExponent; | |
| 54 | ||
| 55 | /** | |
| 56 | * Create a microsphere interpolator with default settings. | |
| 57 | * Calling this constructor is equivalent to call {@link | |
| 58 | * #MicrosphereInterpolator(int, int) | |
| 59 | * MicrosphereInterpolator(MicrosphereInterpolator.DEFAULT_MICROSPHERE_ELEMENTS, | |
| 60 | * MicrosphereInterpolator.DEFAULT_BRIGHTNESS_EXPONENT)}. | |
| 61 | */ | |
| 62 | public MicrosphereInterpolator() { | |
| 63 | this(DEFAULT_MICROSPHERE_ELEMENTS, DEFAULT_BRIGHTNESS_EXPONENT); | |
| 64 | } | |
| 65 | ||
| 66 | /** Create a microsphere interpolator. | |
| 67 | * @param elements Number of surface elements of the microsphere. | |
| 68 | * @param exponent Exponent used in the power law that computes the | |
| 69 | * weights (distance dimming factor) of the sample data. | |
| 70 | * @throws NotPositiveException if {@code exponent < 0}. | |
| 71 | * @throws NotStrictlyPositiveException if {@code elements <= 0}. | |
| 72 | */ | |
| 73 | public MicrosphereInterpolator(final int elements, | |
| 74 | final int exponent) | |
| 75 | throws NotPositiveException, | |
| 76 | NotStrictlyPositiveException { | |
| 77 |
2
1. 2. |
if (exponent < 0) { |
| 78 | throw new NotPositiveException(exponent); | |
| 79 | } | |
| 80 |
2
1. 2. |
if (elements <= 0) { |
| 81 | throw new NotStrictlyPositiveException(elements); | |
| 82 | } | |
| 83 | ||
| 84 | microsphereElements = elements; | |
| 85 | brightnessExponent = exponent; | |
| 86 | } | |
| 87 | ||
| 88 | /** | |
| 89 | * {@inheritDoc} | |
| 90 | */ | |
| 91 | public MultivariateFunction interpolate(final double[][] xval, | |
| 92 | final double[] yval) | |
| 93 | throws DimensionMismatchException, | |
| 94 | NoDataException, | |
| 95 | NullArgumentException { | |
| 96 | final UnitSphereRandomVectorGenerator rand | |
| 97 | = new UnitSphereRandomVectorGenerator(xval[0].length); | |
| 98 |
1
1. interpolate : mutated return of Object value for org/apache/commons/math3/analysis/interpolation/MicrosphereInterpolator::interpolate to ( if (x != null) null else throw new RuntimeException ) → KILLED |
return new MicrosphereInterpolatingFunction(xval, yval, |
| 99 | brightnessExponent, | |
| 100 | microsphereElements, | |
| 101 | rand); | |
| 102 | } | |
| 103 | } | |
Mutations | ||
| 77 |
1.1 2.2 |
|
| 80 |
1.1 2.2 |
|
| 98 |
1.1 |


Re: Version 1.10 Download [LATEST]
Posted: Sun Oct 19, 2008 8:12 pm
Hadn't gotten around to trying it until tonight - still get the dx error; I've installed the dx update. No go.
Game Development and More
http://unseenstudios.com/community/
http://unseenstudios.com/community/viewtopic.php?f=32&t=1168
Joe M. wrote:I had the same problem. This fixed it:
1. Download the dx update.
2. Open the .zip file and find the actual .dll that you're missing (will be in the appropriate CAB file).
3. Copy the .dll into your windows folder.


About Andy Schott
Andy graduated from Rose-Hulman Institute of Technology in 2001 with a Bachelor of Science in Computer Science. He currently works for Quicken Loans on the Rocket Technology team.
A life-long member of the Lutheran Church - Missouri Synod, he currently attends Emmanuel Lutheran Church.
In his free time, Andy enjoys programming small projects and playing video games.
Andy can be found on the following sites:
You can also


Testing 1,2,3
Adventure
- Face/Off
- Iron Man
- Goofy Movie
- Armageddon
- The Rock
- Aladdin
- Ocean's 11
- 21 Jump Street
- Dumbo
- Three Kings
- I Heart Huckabees
- Dumb and Dumber
- Lincoln
Drama
- Face/Off
- Iron Man
- Goofy Movie
- Armageddon
- The Rock
- Aladdin
- Ocean's 11
- 21 Jump Street
- Dumbo
- Three Kings
- I Heart Huckabees
- Dumb and Dumber
- Lincoln
Comedy
- Face/Off
- Iron Man
- Goofy Movie
- Armageddon
- The Rock
- Aladdin
- Ocean's 11
- 21 Jump Street
- Dumbo
- Three Kings
- I Heart Huckabees
- Dumb and Dumber
- Lincoln


In this world , most of the people are gaining knowledge through " MEMES " . So , we made a website which will help the people to gain knowledge , increasing thinking ability , etc . Please spread your love by sending our memes with "Memes Bucket" to this world .


Kerala State Lottery Today Results announced: First prize is worth Rs 1 crore!
Kerala Lottery Results Today, Kerala State Lottery Today Result: The live results will be announced at 3 pm. Official results would be available at 4 pm onwards on http://www.keralalotteries.com.
by Express Web DeskKerala Lottery Results Today, Kerala State Lottery Today Result: The Kerala state lottery department today will announce the results of Kerala Karunya Lottery KN-423. The first prize is worth Rs 1 crore, while the second and third are of Rs 10 lakh and Rs 1,00,000 respectively. The consolation prize is Rs 8,000.
Kerala State Pournami Lottery RN-419 Today Results: Check here
The live results will be announced at 3 pm. Official results would be available at 4 pm onwards on www.keralalotteries.com. The price of a single ticket is Rs 40, while the entire book costs Rs 750.
If the prize money is less than Rs 5,000, the winners can claim the money from any lottery shop in Kerala. If the amount won is above Rs 5,000, the winners will have to surrender their tickets before a bank or government lottery office with id proofs.
With seven daily and multiple bumper draws, the lottery is one of the biggest cash flows in Kerala. The state government organises four festival bumper draws — Onam, Vishu, Christmas and Pooja/Dussehra.
There are two seasonal jackpots, the monsoon and summer bumper.


I am Jeyakumar and i have 2 years experiance in developing highly scalable application. Mainly worked on ROR and Java.
I'm a Self taught guy who loves to learn new technologies. I have knowledge in Pyhton, Arduino, HTML / CSS, Bootstrap, JavaScript, ReactJS & angular JS. Have professional Experiance hosting web application including infrastructure. Host managing, Load balancing etc.


THE DOVE'S LOST NECKLACE A film review by Thomas E. Billings Copyright 1992 Thomas E. Billings
Synopsis: In Moslem Andalusia, during the Eleventh Century, a young man who is an apprentice calligrapher, searches for love and a fabled princess. A folktale with fantasy elements, and a coming of age story. A good story, relatively well done. However, its leisurely pace and indirect approach will not appeal to some viewers.
France/Tunisia (English subtitles), color, 1991, 90 minutes. Director/Writer: Nacer Khemir
Hassan is a young, single man in the prime of his life. He is an apprentice to a master calligrapher. Hassan is also somewhat obsessed with love; he wants to learn all the different Arabic words for love in its different forms. Also, he is very interested in the beautiful daughter of his employer, the master calligrapher.
Using a "middle man," a young child who lives in the street, Hassan tries to tell the calligrapher's daughter of his love for her. Soon he encounters someone burning books; he salvages a scrap of the book and reads of Aziz, Princess of Samarkand. He resolves to leave, and search for the fabled Princess he is sure he loves. The story continues with his adventures as he begins his search.
This film is a pleasant folktale, that tells of a young man's search for love, and for the fabled Princess of Samarkand in her garden. It has good production values, though the viewer is warned that the budget appears to be modest; the film is definitely not a high budget epic! It is also, in a certain sense, a coming of age story, though it is decidedly different from the teenage "hormone comedies" that come from Hollywood.
Although the film is generally quite good, there are a few aspects of it that might deter some viewers. Some of the dialog is very poetic and flowery, and some viewers might find that aspect strange. Also, the last half of the film seems to be a bit disorganized. There are scenes that appear to be pure fantasy, mixed with scenes that may be real. This raises questions of what is real in the last half of the film. Additionally, the first half of the film develops at a very slow pace (too slow for some viewers).
If you enjoy folktales, the film is worth considering. It is unclear whether it is appropriate for a general audience, due to its slow pace and disjointed approach to storytelling.
U.S. Distribution: currently on the film festival circuit. Print source is: Carthago Films, 6 Avenue Hache, 75008 Paris, France. No information available on future U.S. theatrical release.
.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


{% extends "base.html" %} {% block title %}
Medieval catalogues > SECULAR INSTITUTIONS: Secular Colleges > Sudbury > Inventory of goods, 10 May 1391
{% endif %}6 identified entries found.
All data was derived from the List of Identifications by Professor Richard Sharpe.
{% if not printing %}
A key to codes used in the List is available (opens in new tab).{% endif %}


| FsigmaFbyabsLindex | L-plot |
| changeMtzColumns | Read in mtz file and write out with fewer columns. |
| cns2mtz | Miller arrays to convert CNS reflection file into an mtz file |
| computeAllMillerIndices | Compute all possible Miller indices. |
| computeAllMillerIndicesASU | Compute all possible Miller indices in the ASU. |
| computeAllMillerIndicesUnitCell | Build miller indices given unit cell and resolution limit. |
| extractReflectionInShell | Extract the reflections in a shell. |
| extractReflectionMtzFile | Extract the reflections from a mtz file. |
| millerArray2Dictionary | Set up the arrays as dictionaries |
| millerArrayAnomalousSignal | Return the anomalous signal in a specified Miller array. |
| millerArrayBijvoetRatios | Print the Bijvoet ratios in a specified Miller array. May have to average by bin first. |
| millerArrayBuildFromUnitCell | Peter Zwart's code for generating the indices for unit cell of given symmetry and dimensions. |
| millerArrayCC | Return CC one-half sigma tau for a given Miller array. |
| millerArrayCConeHalf | Return CC one-half for a given Miller array. |
| millerArrayComprehensiveSummary | Show comprehensive summary for a specified Miller array. |
| millerArrayCountBijvoetPairs | Show number of bijvoet pairs for a specified Miller array. |
| millerArrayDictColumnLabels | Print column labels of a Miller array dictionary. |
| millerArrayDictPrintColumns | Print the column labels of Miller dictionary. |
| millerArrayDictionaryKeys | Print the miller keys() of a miller dictionary. |
| millerArrayDminDmax | Return the resolution range in Angstroms for a Miller array. |
| millerArrayExtractIntensities | Extract just the intensities for a give Miller array and print ten rows of them. |
| millerArrayFromMtz | Read mtz file into a Miller array. |
| millerArrayHKLs | Print all of the miller indices for a given Miller array. |
| millerArrayIsigma | Return the I/sig overall for a given Miller array. |
| millerArrayLabels | Print column labels in a Miller array. |
| millerArrayLengths | Print length of miller arrays (i.e., the number of datasets in a mtz file). |
| millerArrayMapToASU | Map generated reflections to the asu and print. |
| millerArrayMeasurability | Return the `measurability` of the anomalous signal in a specified Miller array. |
| millerArrayMethods | Print the available methods for the Miller class. |
| millerArrayPrintSelectRows | Print five rows of the Iobs for a specified Miller array. |
| millerArrayPrintSummary | Read mtz file into a miller array and print summary. |
| millerArrayPrintntensities | Print all of the intensities for a given Miller array. |
| millerArrayReadMtz | Read in the mtz file and print its column labels as a sanity check. |
| millerArraySources | Print the source of each miller array. |
| millerArraySymmetry | Print the crystal symmetry of each miller array. |
| millerArrayTruncate | Read mtz file into a Miller array, truncate, and print summary. |
| millerArrayUnpackIpIn | Unpack into I(+) and I(-) for a specified Miller array. |
| millerArrayWavelengths | Print wavelengths of each miller array. |
| millerArrayWilsonRatio | Show wilson ratio of miller array for a specified Miller array. |
| millerArrayconvert2mtz | Convert the miller array into a mtz_dataset and write out as a mtz file. |
| millerArraydstar | Return the resolution range in d* in a specified Miller array. |
| millerMtzImports | Read a mtz file into a miller array. |
| normalizedStructureFactors | Calculate quasi-normalized structure factor. |
| readMtzFile | Read in a mtz file into a Miller array with iotbx.file_reader. |


Toggle navigation
Divorce in the Time of a Pandemic
Journal
Vlog
About
Vlog
by
Csquared
Home
Vlog
The newest content will display first.
Vlog Search


London
The capital of Britain, London was once the heart of the entire british empire.
To this day, the city is filled with palaces and other historic monuments to signify what
once was, a grand empire.

New York
New York City is no stranger to any tourist. The famous city, know for its
landmarks like the central park,the statue of liberty, the Metropolitan Museum
of Art, and the list goes on, is one of the largest financial capitals of America.
Italy
The small european country, Italy known for its famous art and food.
Venice, makes the capital of this country, whose backwaters
are known to be a well known tourist location.
Germany
Known for its steel and car industry, Germany has been one of the leading
countries in terms of development of science.Cities like berlin, Munich
still hold monuments that were important landmarks during the world wars.
Egypt
The exotic country of egypt, with its pyramids and never ending desserts,
is home to one of the seven wonders of the world - The great spinx.
Egyptian culture and the various other landmarks will make a visit to this country,
a memorable one.
Turkey
Formerly called 'The land of the turks', Turkey is a great contrast of the
traditions to the diveristy and the modern lifestyle followed by the people.
Located at the Antonian peninsula, this country makes for a great tourist
destination.
Hawaii
The island state of Hawaii, is known for its beautiful beaches and the beautiful resorts.
The state is the only state that is part of the united states,located outside of North America.
The beauty of hawaii is not unknown to anybody who has heard of it and the state is
and will remain to be a prime tourist location for the next few years.


Users
| Name | Description |
|---|---|
| id | id |
| token | token |
| user[first_name] | First name |
| user[last_name] | Last name |
| user[email] | |
| user[sms_code] | SMS code |
| user[phone] | Phone |
| user[avatar_key] | Avatar key |
| user[about] | About |
| user[goal] | offer_help, ask_for_help, organization |
| user[interests] | Interests |
Content-Type: application/json Host: example.org Cookie:
PATCH /api/v1/users/181
{"token":"foobar179","user":{"first_name":"foo","interests":["sport"]}}
X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1; mode=block X-Content-Type-Options: nosniff X-Download-Options: noopen X-Permitted-Cross-Domain-Policies: none Referrer-Policy: strict-origin-when-cross-origin Access-Control-Allow-Origin: * Access-Control-Allow-Methods: GET,POST,PUT,PATCH,DELETE Access-Control-Allow-Headers: Origin,Accept,Content-Type,X-Requested-With,X-CSRF-Token,X-API-KEY Content-Type: application/json; charset=utf-8 ETag: W/"ab4eb25446df11131a4dbfdd4431946a" Cache-Control: max-age=0, private, must-revalidate X-Request-Id: 5fd75406-3122-473d-8664-1658462ccd4d X-Runtime: 0.035574 Content-Length: 1045
200 OK
{ "user": { "id": 181, "display_name": "Foo D.", "first_name": "foo", "last_name": "Doe", "roles": [ ], "about": null, "avatar_url": null, "user_type": "pro", "partner": null, "engaged": false, "unread_count": 0, "permissions": { "outing": { "creation": false } }, "interests": [ "sport" ], "memberships": [ ], "conversation": { "uuid": "1_list_181" }, "anonymous": false, "uuid": "181", "feature_flags": { "organization_admin": false }, "token": "foobar179", "email"<EMAIL_ADDRESS>"has_password": false, "firebase_properties": { "ActionZoneDep": "not_set", "ActionZoneCP": "not_set", "Goal": "no_set", "Interests": "sport" }, "goal": null, "phone": "+33600000179", "travel_distance": 10, "birthday": null, "stats": { "tour_count": 0, "encounter_count": 0, "entourage_count": 0, "actions_count": 0, "ask_for_help_creation_count": 0, "contribution_creation_count": 0, "events_count": 0, "good_waves_participation": false }, "organization": { "name": "Association 84", "description": "Association description", "phone": "+33600000084", "address": "84 avenue des Champs Elysées 75008 Paris France", "logo_url": null }, "address": null, "address_2": null } }


Introduction
When it comes to database monitoring, there are many different aspects and areas you have to examine.
DB2 provides a comprehensive set of monitoring functions, routines, and tools to help you diagnose and
identify the problem area.
Imagine you have to type in the SQL statements with monitoring functions, capture the results, parse
the results, analyze the results, and execute the SQL statements again to obtain the rate of changes.
It doesn't sound like an efficient and effective task.
One of Technology Explorer features, Views (or Reports) addresses this problem very easily. TE allows
you to define and customize your own views against any SQL statement (including the use of monitoring
table functions). Once you have defined a view and created a menu for it, you can view the results at
real time whenever you need it.
Views in TE are defined in XML profiles. The XML file controls what
SQL statement to run, how the columns are displayed, what are the cross reference links and any associated
actions. It even controls detailed information on the page itself, searching rules, rows to display, and much more.
Before you know it, you will have a set of your own views for your own database system. You can also easily
put the views together and build a dashboard. A customized dashboard that tells you the health of your system
at a glance.
TE allows you to generate these views from any SQL statement in a very easy manner. This tutorial
will take you through various steps needed to create a view in TE.


Modager
The modpack maker and manager you always needed!
GitHub
View License
Application made by SwanX1 | Copyright


We can use cola.js for Metric Multidimensional Scaling by specifying a complete distance matrix between all pairs of nodes. Instead of specifying edges, use the
Layout.distanceMatrix()
function to specify the matrix.
Currently, the drawn links show the strongest th percentile of correllations, change this threshold with the slider below. Press the button above to show the graph of thresholded links.
No Links All Links
a single subject resting-state connectivity matrix that is +/- signed and weighted ('signed_weighted.txt') along with an affiliation vector ('signed_weighted_affil.txt') from a single run of a Q* modularity analysis (Rubinov & Sporns).


XSite Core contains the core functionality of XSite
XSite Ant adds support for execution using Ant
XSite Maven Plugin adds support for execution using Maven


Developer Segment:
Back End
Front End
Full Stack
Connection Types:
All
Strong
Strong and Medium
Draw


 Please enter a valid message.
Speak


Remember when love was supposed to Trump hate? Remember when the oil companies and bankers seemed to be running scared?  And what can we do about it?
Naomi Klein - scourge of brand bullies and corporate crooks - shows us how we got here, and how we can make things better.
No Is Not Enough reveals, among other things, that the disorientation we're feeling is deliberate. That around the world, shock political tactics are being used to generate crisis after crisis, designed to force through policies that will destroy people, the environment, the economy and our security. That extremism isn't a freak event - it's a toxic cocktail of our times.
This book is a toolkit for shock resistance. From how to trash the Trump megabrand to the art of reclaiming the populist argument, Naomi Klein shows all of us how we can break the spell and win the world we need. Don't let them get away with it.
Shock.