Custom SSIS task

We are in need of a custom SSIS Data Flow Task. The task is not very complicated. It has to add a field with the calculated distance between two coordinates. We need to be able to specify 4 fields.

- Start Latitude (in decimal degrees)

- Start Longitude (in decimal degrees)

- Stop Latitude (in decimal degrees)

- Stop Longitude (in decimal degrees)

The task needs to add a field 'distance'. The distance is in miles or kilometers. This should be an option in the task screen.

Of course the task has to be as fast as it is possible. It has to calculate millions of records.

The calculation for this task is (in c#):

using System;


//::: :::

//::: :::

//::: Definitions: :::

//::: South latitudes are negative, east longitudes are positive :::

//::: :::

//::: Passed to function: :::

//::: lat1, lon1 = Latitude and Longitude of point 1 (in decimal degrees) :::

//::: lat2, lon2 = Latitude and Longitude of point 2 (in decimal degrees) :::

//::: unit = the unit you desire for results :::

//::: where: 'M' is statute miles :::

//::: 'K' is kilometers (default) :::

//::: 'N' is nautical miles :::

//::: :::

//::: :::


private double distance(double lat1, double lon1, double lat2, double lon2, char unit) {

double theta = lon1 - lon2;

double dist = [url removed, login to view](deg2rad(lat1)) * [url removed, login to view](deg2rad(lat2)) + [url removed, login to view](deg2rad(lat1)) * [url removed, login to view](deg2rad(lat2)) * [url removed, login to view](deg2rad(theta));

dist = [url removed, login to view](dist);

dist = rad2deg(dist);

dist = dist * 60 * 1.1515;

if (unit == 'K') {

dist = dist * 1.609344;

} else if (unit == 'N') {

dist = dist * 0.8684;


return (dist);



//:: This function converts decimal degrees to radians :::


private double deg2rad(double deg) {

return (deg * [url removed, login to view] / 180.0);



//:: This function converts radians to decimal degrees :::


private double rad2deg(double rad) {

return (rad / [url removed, login to view] * 180.0);


Taidot: C# -ohjelmointi, SQL

Näytä lisää: custom ssis task, latitude longitude ssis, latitude longitude distance calculation ssis, add custom field task, custom task ssis, ssis custom task, task 1, ssis data flow task, it degrees, ssis add degrees radians, ssis add calculated field, ssis latitude, ssis calculate field, SSIS SQL, Sql ssis, sin, sin cos, nautical, longitude, latitude, custom field, course math, cos, coordinates , c++ pi

Tietoa työnantajasta:
( 1 arvostelu ) Sleeuwijk, Netherlands

Projektin tunnus: #489806

Myönnetty käyttäjälle:


hi,please check pm.

$350 USD 5 päivässä
(2 Arvostelua)

3 freelanceria on tarjonnut keskimäärin %project_bid_stats_avg_sub_26% %project_currencyDetails_sign_sub_27% tähän työhön


yes , ican do this task i have some experience about SSIS package iwant to ask if you need interface for this task that take the 4 fields and inserts the result in excel sheets or text documets or in table in data b Lisää

$275 USD 4 päivässä
(0 arvostelua)

I have been working as software developer since 5 years and very well versed windows as well as web based applications. I need 5 days to accomplish this project and quality no issues.

$500 USD 5 päivässä
(0 arvostelua)