#!/usr/local/bin/pyrperl -w use strict; use warnings; use Fcntl qw( :DEFAULT :flock SEEK_SET ); our ( $ROOT, $Debug, $LOCK ); $ROOT = `pwd`; chomp ( $ROOT ); if ( substr($ROOT,-1) eq "/" ) { chop( $ROOT ); } $Debug = 4; my $WRKLock = "$ROOT/lock"; open ( $LOCK, ">>","$WRKLock") || die " ! open-20 |$WRKLock| $!\n"; my $ret = &Build_Orders_Lists(); exit; sub Build_Orders_Lists { our ( $ROOT, $Debug, $LOCK ); my %SeqOrders = (); my $allcases = "$ROOT/indata"; my $mycases = "$ROOT/outdata"; my $no = 1; { # open ( my $in,"<",$allcases ) || die " ! open-900 |$allcases| $!\n"; open ( my $out,">",$mycases ) || die " ! open-901 |$mycases| $!\n"; open ( my $nxout,">","$ROOT/log1" ) || die " ! open-901 |$mycases| $!\n"; open ( my $xxout,">","$ROOT/log2" ) || die " ! open-901 |$mycases| $!\n"; if ( flock( $LOCK, LOCK_SH ) ) { %SeqOrders = (); $no = 1; while( my $input = ) { if ( substr( $input, 0, 2 ) eq '99' ) { last; } print $nxout $input; chomp( $input ); my @Info = split("\t",$input); my $recid = $Info[2]; substr( $recid, 0, 1, '' ); $recid .= substr( $Info[2], 0, 1 ); $SeqOrders{ $recid } = $input; print $xxout "$no:$recid\t$SeqOrders{ $recid }\n"; $no++; } } if ( flock( $out, LOCK_EX ) ) { $no = 1; open ( my $yyout,">","$ROOT/log3" ) || die " ! open-901 |$mycases| $!\n"; foreach my $recid ( reverse sort %SeqOrders ) { if ( ! defined $SeqOrders{ $recid } ) { $SeqOrders{ $recid } = ''; } print $out "$recid:$SeqOrders{ $recid }\n"; print $yyout "||$recid||$SeqOrders{ $recid }\n"; } } close $out; } } 1; __DATA__ US 2017-04-25 P17-115-00043-P 2017-04-25 Accepted XXX 2017-00916-UD-NJC Information 4714336 240.00 5.00 8.40 10065 20 16:28:26.162-07:00 US 2017-04-25 P17-115-00046-P 2017-04-25 Accepted XXX 2017-00916-OR-CJC Information 3538098 225.00 5.00 7.88 10249 20 16:43:14.310-07:00 US 2017-04-25 P17-115-00048-P 2017-04-25 Accepted XXX 2017-00916-OR-CJC Information 2549853 225.00 5.00 7.88 10249 20 17:20:07.354-07:00 US 2017-04-25 P17-115-00049-P 2017-04-25 Accepted XXX 2017-00916-UD-CJC Information 2549860 240.00 5.00 8.40 10065 20 17:22:00.419-07:00 US 2017-04-26 E17-109-00010-P 2017-04-19 Accepted XXX 2009-00246-UD-HNB Information 1380135 50.00 5.00 1.75 10378 20 08:01:04.027-07:00 US 2017-04-26 P17-115-00050-P 2017-04-25 Accepted XXX 2017-00916-UD-NJC Information 2549859 240.00 5.00 8.40 10249 20 08:02:45.472-07:00 US 2017-04-26 E17-115-00054-P 2017-04-25 Partial XXX 2017-00914-UD-CJC Information 3538184 25.00 5.00 0.88 10065 20 08:18:22.493-07:00 US 2017-04-26 P17-115-00051-P 2017-04-25 Accepted XXX 2017-00916-UD-NJC Information 1381341 240.00 5.00 8.40 10065 20 08:20:20.321-07:00 US 2017-04-26 P17-115-00052-P 2017-04-25 Accepted XXX 2017-00916-UD-HNB Information 4714480 240.00 5.00 8.40 10065 20 08:31:31.958-07:00 US 2017-04-26 E17-109-00017-P 2017-04-19 Accepted XXX 2015-00824-UD-HNB Information 4711172 25.00 5.00 0.88 10378 20 08:40:49.988-07:00 US 2017-04-26 E17-115-00056-P 2017-04-25 Accepted XXX 2017-00915-UD-NJC Information 2549876 20.00 5.00 0.70 10127 20 08:41:36.325-07:00 US 2017-04-26 E17-115-00055-P 2017-04-25 Partial XXX 2017-00914-UD-CJC Information 3538188 25.00 5.00 0.88 10065 20 08:45:49.402-07:00 US 2017-04-26 E17-109-00029-P 2017-04-19 Accepted XXX 2008-00207-UD-HNB Information 4711229 25.00 5.00 0.88 10378 20 08:52:51.499-07:00 US 2017-04-26 E17-116-00003-P 2017-04-26 Accepted XXX 99999999 Information 2549914 5.00 0.00 10546 20 09:00:09.227-07:00 US 2017-04-26 E17-109-00021-P 2017-04-19 Accepted XXX 2016-00873-UD-HNB Information 4711185 25.00 5.00 0.88 10378 20 09:05:43.932-07:00 US 2017-04-26 E17-109-00031-P 2017-04-19 Accepted XXX 2011-00492-UD-HNB Information 3535722 25.00 5.00 0.88 10378 20 09:08:20.122-07:00 US 2017-04-26 P17-116-00005-P 2017-04-26 Accepted XXX 2017-00916-UD-NJC Information 2549916 240.00 5.00 8.40 10127 20 09:09:28.757-07:00 US 2017-04-26 E17-109-00023-P 2017-04-19 Accepted XXX 2015-00803-UD-HNB Information 3535675 25.00 5.00 0.88 10378 20 09:09:45.021-07:00 US 2017-04-26 E17-109-00032-P 2017-04-19 Accepted XXX 2014-00743-UD-HNB Information 4711242 25.00 5.00 0.88 10378 20 09:22:13.178-07:00 US 2017-04-26 P17-116-00009-P 2017-04-26 Accepted XXX 2017-00916-UD-HNB Information 3538273 240.00 9.00 8.40 10135 20 10:18:35.775-07:00 US 2017-04-26 E17-116-00008-P 2017-04-26 Accepted XXX 2016-00889-BC-CJC Information 4714644 5.00 0.00 10546 20 10:18:46.718-07:00 US 2017-04-26 E17-115-00023-P 2017-04-25 Accepted XXX 2016-00890-CL-CJC Information 1381221 20.00 0.00 10658 20 10:19:46.251-07:00 US 2017-04-26 E17-115-00047-P 2017-04-25 Accepted XXX 2017-00915-UD-CJC Information 3538114 5.00 0.00 10249 20 10:22:32.555-07:00 US 2017-04-26 E17-115-00019-P 2017-04-25 Accepted XXX 2015-00797-FR-CJC Information 1381188 5.00 0.00 10546 20 10:30:46.680-07:00 US 2017-04-26 E17-115-00044-P 2017-04-25 Accepted XXX 2017-00914-UD-HNB Information 3538029 20.00 5.00 0.70 10127 20 10:40:08.634-07:00 US 2017-04-26 E17-115-00039-P 2017-04-25 Partial XXX 2016-00871-BC-CJC Information 3538000 5.00 0.00 10127 20 11:07:32.986-07:00 US 2017-04-26 E17-110-00002-P 2017-04-20 Accepted XXX 99999999 Information 4711724 25.00 9.00 0.88 10137 20 11:34:57.832-07:00 US 2017-04-26 E17-116-00001-P 2017-04-26 Accepted XXX 99999999 Information 4714609 60.00 5.00 2.10 10546 20 12:27:53.349-07:00 US 2017-04-26 P17-116-00014-P 2017-04-26 Accepted XXX 2017-00916-UD-NJC Information 3538379 240.00 5.00 8.40 10249 20 12:43:02.694-07:00 US 2017-04-26 E17-116-00018-P 2017-04-26 Accepted XXX 2017-00913-UD-NJC Information 4714878 60.00 5.00 2.10 10127 20 13:19:57.294-07:00 US 2017-04-26 P17-116-00017-P 2017-04-26 Accepted XXX 2017-00916-UD-NJC Information 4714875 240.00 5.00 8.40 10065 20 13:31:26.197-07:00 US 2017-04-26 E17-116-00010-P 2017-04-26 Accepted XXX 2017-00914-UD-CJC Information 2549946 5.00 0.00 10127 20 13:47:41.376-07:00 US 2017-04-26 E17-114-00002-P 2017-04-24 Accepted XXX 2016-00890-BT-CJC Information 4713202 9.00 0.00 10099 20 13:47:57.936-07:00 US 2017-04-26 E17-115-00031-P 2017-04-25 Accepted XXX 2017-00909-UD-NJC Information 4714240 25.00 5.00 0.88 10249 20 13:51:05.770-07:00 US 2017-04-26 E17-116-00012-P 2017-04-26 Accepted XXX 2017-00915-UD-CJC Information 1381378 5.00 0.00 10127 20 13:52:42.682-07:00 US 2017-04-26 P17-116-00015-P 2017-04-26 Accepted XXX 2017-00916-UD-CJC Information 2550059 240.00 5.00 8.40 10127 20 13:54:13.356-07:00 US 2017-04-26 P17-116-00022-P 2017-04-26 Accepted XXX 2017-00916-UD-NJC Information 1381474 240.00 5.00 8.40 10127 20 14:37:06.541-07:00 US 2017-04-26 E17-116-00025-P 2017-04-26 Accepted XXX 2016-00894-UD-HNB Information 4714954 5.00 0.00 10065 20 15:04:41.454-07:00 US 2017-04-26 E17-116-00007-P 2017-04-26 Accepted XXX 99999999 Information 2549917 25.00 5.00 0.88 10546 20 15:14:50.089-07:00 US 2017-04-26 E17-116-00013-P 2017-04-26 Accepted XXX 2017-00913-UD-CJC Information 4714690 25.00 5.00 0.88 10127 20 15:18:13.048-07:00 US 2017-04-26 E17-116-00030-P 2017-04-26 Accepted XXX 2017-00916-UD-NJC Information 2550176 5.00 0.00 10065 20 16:08:30.582-07:00 US 2017-04-26 P17-116-00032-P 2017-04-26 Rejected XXX 99999999 Information 2550210 5.00 0.00 10127 20 16:47:09.818-07:00 US 2017-04-27 E17-116-00029-P 2017-04-26 Accepted XXX 2008-00048-UD-NJC Information 1381512 25.00 9.00 0.88 10137 20 08:00:56.231-07:00 US 2017-04-27 E17-116-00031-P 2017-04-26 Accepted XXX 2017-00910-UD-HNB Information 3538615 5.00 0.00 10065 20 08:47:08.928-07:00 US 2017-04-27 E17-116-00026-P 2017-04-26 Accepted XXX 2017-00915-UD-HNB Information 2550159 20.00 5.00 0.70 10065 20 09:16:35.514-07:00 US 2017-04-27 E17-116-00034-P 2017-04-26 Accepted XXX 2017-00915-UD-HNB Information 4715140 20.00 5.00 0.70 10065 20 09:32:03.932-07:00 US 2017-04-27 E17-116-00024-P 2017-04-26 Accepted XXX 2016-00871-BC-CJC Information 4714945 5.00 0.00 10127 20 09:36:41.675-07:00 US 2017-04-27 P17-117-00001-P 2017-04-27 Accepted XXX 2017-00916-BC-CJC Information 2550260 225.00 5.00 7.88 10546 20 09:37:02.958-07:00 US 2017-04-27 E17-116-00033-P 2017-04-26 Accepted XXX 2017-00915-UD-HNB Information 1381546 5.00 0.00 10065 20 09:41:44.423-07:00 US 2017-04-27 E17-111-00039-P 2017-04-21 Accepted XXX 2015-00820-UD-HNB Information 1380776 25.00 5.00 0.88 10065 20 09:59:50.377-07:00 US 2017-04-27 E17-117-00005-P 2017-04-27 Accepted XXX 99999999 Information 1381573 5.00 0.00 10546 20 10:00:51.999-07:00 US 2017-04-27 P17-117-00002-P 2017-04-27 Accepted XXX 2017-00916-UD-HNB Information 4715341 385.00 5.00 13.48 10127 20 10:06:54.768-07:00 US 2017-04-27 E17-114-00027-P 2017-04-24 Accepted XXX 2017-00911-UD-CJC Information 3537332 9.00 0.00 10065 20 10:48:27.908-07:00 US 2017-04-27 E17-117-00007-P 2017-04-27 Accepted XXX 2017-00903-BC-CJC Information 1381585 5.00 0.00 10546 20 10:50:06.205-07:00 US 2017-04-27 E17-117-00012-P 2017-04-27 Accepted XXX 2017-00913-UD-HNB Information 3538833 5.00 0.00 10249 20 11:29:21.048-07:00 US 2017-04-27 E17-117-00013-P 2017-04-27 Partial XXX 2017-00912-UD-NJC Information 1381615 25.00 5.00 0.88 10065 20 11:32:34.441-07:00 US 2017-04-27 E17-115-00003-P 2017-04-25 Accepted XXX 2017-00901-BT-CJC Information 4713928 870.00 5.00 30.45 10127 20 11:37:22.418-07:00 US 2017-04-27 P17-117-00017-P 2017-04-27 Accepted XXX 2017-00917-UD-HNB Information 1381638 240.00 5.00 8.40 10127 20 11:59:37.051-07:00 US 2017-04-27 E17-117-00019-P 2017-04-27 Accepted XXX 2017-00910-PT-CJC Information 4715478 9.00 0.00 10549 20 12:01:42.403-07:00 US 2017-04-27 P17-117-00021-P 2017-04-27 Accepted XXX 2017-00917-UD-NJC Information 4715519 240.00 5.00 8.40 10127 20 12:28:41.732-07:00 US 2017-04-27 E17-117-00026-P 2017-04-27 Rejected XXX 2016-00891-OR-CJC Information 4715565 9.00 0.00 10622 20 13:53:03.215-07:00 US 2017-04-27 P17-117-00015-P 2017-04-27 Accepted XXX 2017-00917-UD-HNB Information 2550408 240.00 5.00 8.40 10249 20 14:02:53.945-07:00 US 2017-04-27 E17-117-00027-P 2017-04-27 Accepted XXX 99999999 Information 4715591 30.00 9.00 1.05 10137 20 14:16:50.698-07:00 US 2017-04-27 E17-117-00028-P 2017-04-27 Accepted XXX 99999999 Information 4715595 30.00 9.00 1.05 10137 20 14:24:32.446-07:00 US 2017-04-27 P17-117-00030-P 2017-04-27 Accepted XXX 2017-00917-UD-HNB Information 4715626 240.00 5.00 8.40 10065 20 14:39:33.961-07:00 US 2017-04-27 P17-117-00031-P 2017-04-27 Accepted XXX 2017-00917-UD-HNB Information 2550470 240.00 5.00 8.40 10065 20 14:48:09.581-07:00 US 2017-04-27 E17-108-00046-P 2017-04-18 Accepted XXX 2016-00881-UD-CJC Information 4710806 25.00 9.00 0.88 10679 20 15:14:16.318-07:00 US 2017-04-27 E17-116-00023-P 2017-04-26 Accepted XXX 2008-00217-UD-HNB Information 4714918 25.00 9.00 0.88 10137 20 15:21:17.036-07:00 US 2017-04-27 E17-117-00032-P 2017-04-27 Rejected XXX 2017-00907-UD-CJC Information 3539028 5.00 0.00 10127 20 15:24:08.760-07:00 US 2017-04-27 E17-117-00035-P 2017-04-27 Accepted XXX 2016-00853-CO-CJC Information 3539079 20.00 0.00 10469 20 16:17:23.604-07:00 US 2017-04-28 E17-116-00021-P 2017-04-26 Partial XXX 2017-00910-UD-CJC Information 4714894 25.00 5.00 0.88 10065 20 07:32:03.518-07:00 US 2017-04-28 E17-115-00002-P 2017-04-25 Accepted XXX 99999999 Information 3537689 25.00 9.00 0.88 10137 20 08:16:54.048-07:00 US 2017-04-28 P17-117-00043-P 2017-04-27 Accepted XXX 2017-00917-UD-CJC Information 3539205 240.00 5.00 8.40 10065 20 08:17:00.068-07:00 US 2017-04-28 E17-117-00038-P 2017-04-27 Accepted XXX 2016-00891-OR-CJC Information 4715786 9.00 0.00 10622 20 08:17:41.498-07:00 US 2017-04-28 E17-117-00042-P 2017-04-27 Accepted XXX 2017-00915-UD-HNB Information 4715852 5.00 0.00 10065 20 08:35:52.284-07:00 US 2017-04-28 E17-116-00025-2P 2017-04-26 Rejected XXX 2016-00894-UD-HNB Information 4714953 5.00 0.00 10065 20 08:58:42.801-07:00 US 2017-04-28 E17-117-00036-P 2017-04-27 Accepted XXX 99999999 Information 2550511 30.00 9.00 1.05 10137 20 09:17:40.569-07:00 US 2017-04-28 E17-117-00004-P 2017-04-27 Accepted XXX 99999999 Information 1381569 60.00 5.00 2.10 10546 20 09:46:10.238-07:00 US 2017-04-28 E17-118-00003-P 2017-04-28 Accepted XXX 2017-00914-UD-HNB Information 2550657 5.00 0.00 10127 20 10:12:01.584-07:00 US 2017-04-28 E17-117-00033-P 2017-04-27 Rejected XXX 2017-00904-UD-CJC Information 1381734 5.00 0.00 10127 20 10:17:01.796-07:00 US 2017-04-28 E17-117-00037-P 2017-04-27 Rejected XXX 2017-00907-UD-CJC Information 4715773 5.00 0.00 10127 20 10:19:17.739-07:00 US 2017-04-28 E17-118-00006-P 2017-04-28 Accepted XXX 99999999 Information 1381874 9.00 0.00 10137 20 10:32:30.324-07:00 US 2017-04-28 E17-118-00026-P 2017-04-28 Accepted XXX 2017-00915-UD-HNB Information 4716270 5.00 0.00 10065 20 15:37:03.802-07:00 US 2017-04-28 E17-117-00045-P 2017-04-27 Accepted XXX 2017-00916-UD-CJC Information 3539222 20.00 5.00 0.70 10127 20 15:58:07.547-07:00 US 2017-04-28 E17-117-00022-P 2017-04-27 Partial XXX 2008-00059-BC-CJC Information 4715546 4.95 0.00 10230 20 16:00:23.531-07:00 US 2017-04-28 E17-118-00004-P 2017-04-28 Accepted XXX 2017-00915-UD-HNB Information 2550675 5.00 0.00 10127 20 16:01:53.797-07:00 US 2017-04-28 P17-118-00014-P 2017-04-28 Accepted XXX 2017-00917-UD-CJC Information 3539427 240.00 5.00 8.40 10127 20 16:12:46.567-07:00 US 2017-04-28 E17-118-00005-P 2017-04-28 Accepted XXX 2017-00916-UD-CJC Information 2550681 5.00 0.00 10127 20 16:15:41.084-07:00 US 2017-04-28 P17-118-00016-P 2017-04-28 Accepted XXX 2017-00917-UD-CJC Information 1381915 240.00 5.00 8.40 10127 20 16:27:30.079-07:00 US 2017-04-28 E17-117-00034-P 2017-04-27 Accepted XXX 2017-00910-UD-CJC Information 2550482 25.00 5.00 0.88 10127 20 16:27:39.834-07:00 US 2017-04-28 P17-118-00023-P 2017-04-28 Accepted XXX 2017-00917-UD-CJC Information 3539463 240.00 5.00 8.40 10249 20 16:45:44.015-07:00 US 2017-04-28 E17-118-00027-P 2017-04-28 Accepted XXX 2017-00915-UD-HNB Information 4716282 5.00 0.00 10065 20 17:01:24.588-07:00 US 2017-04-28 E17-118-00025-P 2017-04-28 Accepted XXX 2017-00915-UD-HNB Information 2550805 5.00 0.00 10065 20 17:04:22.179-07:00 US 2017-04-28 E17-118-00031-P 2017-04-28 Accepted XXX 2016-00894-UD-HNB Information 4716317 60.00 5.00 2.10 10065 20 17:15:21.669-07:00 US 2017-04-28 P17-118-00019-P 2017-04-28 Accepted XXX 2017-00917-UD-NJC Information 3539435 240.00 5.00 8.40 10127 20 17:41:01.636-07:00 US 2017-04-28 E17-117-00041-P 2017-04-27 Accepted XXX 2017-00915-UD-HNB Information 2550583 20.00 5.00 0.70 10127 20 17:50:03.112-07:00 US 2017-04-28 E17-117-00003-P 2017-04-27 Accepted XXX 99999999 Information 4715325 5.00 0.00 10546 20 17:50:08.769-07:00 US 2017-04-28 E17-118-00020-P 2017-04-28 Accepted XXX 2017-00916-UD-HNB Information 2550754 5.00 0.00 10127 20 18:01:28.520-07:00 US 2017-04-28 P17-118-00018-P 2017-04-28 Accepted XXX 2017-00917-UD-NJC Information 2550743 240.00 5.00 8.40 10249 20 18:08:01.940-07:00 US 2017-04-28 E17-118-00024-P 2017-04-28 Accepted XXX 2017-00913-UD-HNB Information 2550774 5.00 0.00 10249 20 18:27:45.995-07:00 US 2017-04-28 E17-117-00020-P 2017-04-27 Accepted XXX 2017-00913-UD-NJC Information 4715506 25.00 9.00 0.88 10137 20 18:31:43.425-07:00 99 2017-04-28 E17-118-00009-P 2017-04-28 Accepted XXX 99999999 Information 4716110 9.00 0.00 10137 20 19:05:29.957-07:00 __END__