Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Best way to increment weeks based on fiscal start year Post 303005693 by SIMMS7400 on Saturday 21st of October 2017 10:24:07 PM
Old 10-21-2017
Best way to increment weeks based on fiscal start year

Hi Folks -

I'm looking for the best way to to increment fiscal weeks - allow me to explain.

At my one client, 10/01/17 was the beginning if year fiscal year 2018.
Each week, I need to manage a unique set of variable that are updated in my application - they are called substitution variables.

I manage them (manually) in a comma delimited format, and then run a ksh over them to extract both columns and spool them to an "*.mxl" file in a specific import format.

For instance:

Code:
curwk_d,'wk04 fy18';
pw1_d,'wk03 fy18';
pw2_d,'wk02 fy18';
pw3_d,'wk01 fy18';
pw4_d,'wk53 fy17';
p5w_d,'wk52 fy17';
p6w_d,'wk51 fy17';
p7w_d,'wk50 fy17';
p8w_d,'wk49 fy17';
p9w_d,'wk48 fy17';
p10w_d,'wk47 fy17';
p11w_d,'wk46 fy17';
p12w_d,'wk45 fy17';

And then the import format is as such:

Code:
alter system set variable curwk_d 'wk04 fy18';
alter system set variable pw1_d 'wk03 fy18';
alter system set variable pw2_d 'wk02 fy18';
alter system set variable pw3_d 'wk01 fy18';
alter system set variable pw4_d 'wk53 fy17';
alter system set variable pw5_d 'wk52 fy17';
alter system set variable pw6_d 'wk51 fy17';
alter system set variable pw7_d 'wk50 fy17';
alter system set variable pw8_d 'wk49 fy17';
alter system set variable pw9_d 'wk48 fy17';
alter system set variable pw10_d 'wk47 fy17';
alter system set variable pw11_d 'wk46 fy17';
alter system set variable pw12_d 'wk45 fy17';

Then, the "*.mxl" file is read into the target system using a certain utility called from a shell script, but I digress.

As you can see, there are 13 variables. 1 is the current week (from start of fiscal) and the 12 additional previous week variables.

For instance, current week is the upcoming week, which is the 4th week since start of fiscal, as indicated by wk04.

My question is, is there an easy way to manage this and increment as necessary each week (on Saturday) when this is run?

Thank you!

Last edited by SIMMS7400; 10-22-2017 at 12:24 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How many weeks in a year

Hi, I search how i could do to find if a year (for example 2004, 1989, 2058) has 52 or 53 weeks... Have you a idea for me please??? (1 Reply)
Discussion started by: Castelior
1 Replies

2. Solaris

Number of files - in start of year

Is there any way to find "Number of files" that exists on my solaris parition in the starting of 2009 year ? I know ctime or mtime will not help and unix wouldnt store creation time. Only hope i can see ( and i am not sure if that will help ) is that my system is up from last 2 years without... (5 Replies)
Discussion started by: rajwinder
5 Replies

3. Shell Programming and Scripting

how to increment days according to year & month

Hiii i have a file with data as shown below: a.dat: RAO 1900 2 7 0 0 0.00 10.8000 76.8000 10.0 0 0.00 0 6.00 0.00 0.00 0 0.00 6.00 0 NULL LEE 1901 2 15 0 0 0.00 26.0000 100.0000 0.0 0 0.00 0 0.00 0.00 0.00 0 6.00 6.00 0 NULL RAO 1901 4... (3 Replies)
Discussion started by: reva
3 Replies

4. Shell Programming and Scripting

My PM has told me to learn shell scripting in 2 weeks , how should I start?

My PM has told me to learn shell scrting in 2 weeks , how should I start?:confused::confused::confused::confused: (1 Reply)
Discussion started by: manalisharmabe
1 Replies

5. Shell Programming and Scripting

Value Increment based on count

Hi All, I have source file x.txt 0001|0003 0031|0031 0045|0049 My desired output should be: y.txt 0001 0002 0003 0031 0045 0046 0047 (11 Replies)
Discussion started by: kmsekhar
11 Replies

6. Shell Programming and Scripting

How to calculate the total number of weeks from a specify year?

Hi anyone can help? How to calculate total number of weeks from a specify date, for example, 01 Jan 2012. Thx! (2 Replies)
Discussion started by: rayray2013
2 Replies

7. Shell Programming and Scripting

Create new file with increment column based on conditions

Hello, Using bash script, i need to process the following file: 887,86,,2013-11-06,1,10030,5,2,0,200,, 887,86,,2013-11-05,1,10030,5,2,0,199,, 887,138,,2013-11-06,1,10031,6,2,0,1610612736,, 887,164,,2013-11-06,1,10000,0,2,0,36000,, and to create a new file such as the below ... (2 Replies)
Discussion started by: JonhyDeep
2 Replies

8. Shell Programming and Scripting

Increment with awk - how to define start value

Hello, I am running under ubuntu18.04 My question is about awk. inputfile 0wo010011oasasds sdjhsdjh=, u12812888 8jsjkahsjajnsanakn akjskjskj=, suhuhuhwx kskkxmsnnxsnjxsnjxsnjjnjjdi=, 22878ssssss Below code adds consecutive numbers when string = is found run_code: awk -F'=' -v OFS='='... (4 Replies)
Discussion started by: baris35
4 Replies

9. Web Development

Color a Badge Based on the Weeks the Member is Active in the Latest Sequence

Hi Ravinder, Could you (and anyone else who wants to help out) check this PHP code and confirm it does what I expect it to do, which is to color a badge based on the weeks a member is active in the latest sequence? I did a cut-paste-change from my "days in sequence" PHP prototype script and it... (6 Replies)
Discussion started by: Neo
6 Replies

10. UNIX for Beginners Questions & Answers

Splitting week start date and end date based on custom period start dates

Below are my custom period start and end dates based on a calender, these dates are placed in a file, for each period i need to split into three weeks for each period row, example is given below. Could you please help out to achieve solution through shell script.. File content: ... (2 Replies)
Discussion started by: nani2019
2 Replies
TZSET(3)						     Linux Programmer's Manual							  TZSET(3)

NAME
tzset, tzname, timezone, daylight - initialize time conversion information SYNOPSIS
#include <time.h> void tzset (void); extern char *tzname[2]; extern long timezone; extern int daylight; DESCRIPTION
The tzset() function initializes the tzname variable from the TZ environment variable. This function is automatically called by the other time conversion functions that depend on the time zone. In a SysV-like environment it will also set the variables timezone (seconds West of GMT) and daylight (0 if this time zone does not have any daylight savings time rules, nonzero if there is a time during the year when daylight savings time applies). If the TZ variable does not appear in the environment, the tzname variable is initialized with the best approximation of local wall clock time, as specified by the tzfile(5)-format file localtime found in the system timezone directory (see below). (One also often sees /etc/localtime used here, a symlink to the right file in the system timezone directory.) If the TZ variable does appear in the environment but its value is NULL or its value cannot be interpreted using any of the formats speci- fied below, Coordinated Universal Time (UTC) is used. The value of TZ can be one of three formats. The first format is used when there is no daylight saving time in the local time zone: std offset The std string specifies the name of the time zone and must be three or more alphabetic characters. The offset string immediately follows std and specifies the time value to be added to the local time to get Coordinated Universal Time (UTC). The offset is positive if the local time zone is west of the Prime Meridian and negative if it is east. The hour must be between 0 and 24, and the minutes and seconds 0 and 59. The second format is used when there is daylight saving time: std offset dst [offset],start[/time],end[/time] There are no spaces in the specification. The initial std and offset specify the standard time zone, as described above. The dst string and offset specify the name and offset for the corresponding daylight savings time zone. If the offset is omitted, it defaults to one hour ahead of standard time. The start field specifies when daylight savings time goes into effect and the end field specifies when the change is made back to standard time. These fields may have the following formats: Jn This specifies the Julian day with n between 1 and 365. February 29 is never counted even in leap years. n This specifies the Julian day with n between 1 and 365. February 29 is counted in leap years. Mm.w.d This specifies day d (0 <= d <= 6) of week w (1 <= w <= 5) of month m (1 <= m <= 12). Week 1 is the first week in which day d occurs and week 5 is the last week in which day d occurs. Day 0 is a Sunday. The time fields specify when, in the local time currently in effect, the change to the other time occurs. If omitted, the default is 02:00:00. The third format specifies that the time zone information should be read from a file: :[filespec] If the file specification filespec is omitted, the time zone information is read from the file localtime in the system timezone directory, which nowadays usually is /usr/share/zoneinfo. This file is in tzfile(5) format. If filespec is given, it specifies another tzfile(5)-format file to read the time zone information from. If filespec does not begin with a `/', the file specification is relative to the system timezone directory. FILES
The system time zone directory used depends on the (g)libc version. Libc4 and libc5 use /usr/lib/zoneinfo, and, since libc-5.4.6, when this doesn't work, will try /usr/share/zoneinfo. Glibc2 will use the environment variable TZDIR, when that exists. Its default depends on how it was installed, but normally is /usr/share/zoneinfo. This timezone directory contains the files localtime local time zone file posixrules rules for POSIX-style TZ's Often /etc/localtime is a symlink to the file localtime or to the correct time zone file in the system time zone directory. CONFORMING TO
SVID 3, POSIX, BSD 4.3 NOTES
Note that the variable daylight does not indicate that daylight savings time applies right now. It used to give the number of some algo- rithm (see the variable tz_dsttime in gettimeofday(2)). It has been obsolete for many years but is required by SUSv2. BSD4.3 had a routine char *timezone(zone,dst) that returned the name of the time zone corresponding to its first argument (minutes West of GMT). If the second argument was 0, the standard name was used, otherwise the daylight savings time version. SEE ALSO
date(1), gettimeofday(2), time(2), ctime(3), getenv(3), tzfile(5) 2001-11-13 TZSET(3)
All times are GMT -4. The time now is 08:11 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy