বৃহত্তর এমএস অ্যাক্সেস অ্যাপ্লিকেশনটি। নেট এর দিকে সরানোর সেরা অনুশীলনগুলি?


26

আমাদের ব্যক্তিগত প্রয়োজনের জন্য প্রাথমিকভাবে ইন-হাউস বিকাশ করা একটি বিশাল বিশাল এমএস অ্যাক্সেস অ্যাপ্লিকেশন রয়েছে যা পরে বাণিজ্যিক সফ্টওয়্যার হিসাবে রূপান্তরিত হয়েছিল এবং সফলভাবে বিক্রি হয়েছিল। সফ্টওয়্যারটি হ'ল "আপনার ব্যবসায়ের জন্য সর্বাত্মক সফ্টওয়্যার" এর এক ধরণের এবং এতে ডকুমেন্ট ম্যানেজমেন্ট সিস্টেম, এন্টারপ্রাইজ রিসোর্স প্ল্যানিং, ইনভেন্টরি ম্যানেজমেন্ট, কাস্টমার রিলেশনশিপ ম্যানেজমেন্ট, ডেটা অ্যানালাইসিস ইত্যাদি সহ বেশ কয়েকটি মডিউল রয়েছে। আমরা বর্তমানের সাথে বেশ সন্তুষ্ট অ্যাপ্লিকেশনটির কার্যকারিতা, তবে আমাদের ক্লায়েন্টদের অনুরোধগুলি পূরণ করার জন্য আমরা বুঝতে পারি যে আমাদের নতুন কিছুতে যেতে হবে।

আমরা ধীরে ধীরে আমাদের অ্যাপ্লিকেশনটি। নেট এর দিকে ধীরে ধীরে সরিয়ে নেওয়ার সিদ্ধান্ত নিয়েছি কারণ আমরা ভিজ্যুয়াল বেসিকের সাথে লেগে থাকতে পারি N নেট: যদিও এটি এখানকার বেশিরভাগ বিকাশকারীদের জন্য এটি একটি নতুন ভাষা, তবে আমাদের ভিবিএ এবং ভিবি 6-তে কার্যকর করা কয়েকটি ডজন ছোট ছোট প্রকল্পের গভীর জ্ঞান রয়েছে।

আমরা ইতিমধ্যে এমএস এসকিউএল সার্ভারে আমাদের অ্যাপ্লিকেশনটির ডেটা স্তর কার্যকারিতা সরিয়ে নেওয়া শুরু করেছি, যাতে প্রতিটি ডেটা ম্যানিপুলেশন এবং অনুসন্ধান সরাসরি সার্ভারে সঞ্চালিত হয়।

আমরা যা খুঁজছি তা হ'ল ধীরে ধীরে আমাদের বিস্তৃত জিইউআই (প্রায় 500-600 বিভিন্ন ফর্মগুলি সহ, বহু ভাষা সমর্থন সহ প্রায় 200 প্রতিবেদন ইত্যাদি) সরানোর জন্য সেরা অভ্যাসগুলি। ডিএমএসে নথিগুলিতে অ্যাসক্রোনাস ডেটা এনক্রিপশন বাস্তবায়নের জন্য আমাদের সম্ভাব্য গ্রাহকের সাম্প্রতিক অনুরোধ অনুসরণ করে আমরা এমএস অ্যাক্সেস থেকে এই অংশটিকে পুরোপুরি ডিকুয়াল করে এবং নেট এ প্রয়োগ করতে পেরে খুশি হব।

প্রশ্নটি কীভাবে বিদ্যমান এমএস অ্যাক্সেস সিস্টেমের সাথে নেট নেট অ্যাপ্লিকেশনটি নির্বিঘ্নে সংহত করা যায়, যাতে আমরা এটিকে নির্দিষ্ট প্যারামিটারগুলির সাথে (ব্যবহারকারীর অধিকার ইত্যাদি) অনুরোধ করতে পারি এবং এই অ্যাপ্লিকেশন এবং এমএস অ্যাক্সেস অ্যাপ্লিকেশনটির মধ্যে ডেটা এক্সচেঞ্জ সক্ষম করতে পারি।


সম্পাদনা করুন:

আমরা এমএস অ্যাক্সেস অ্যাপ্লিকেশন এবং কিছু ছোট ইউটিলিটিস। ন্যাটের বিভিন্ন প্রয়োজনে প্রয়োগ করেছি এর মধ্যে কিছু সংহততা অর্জনের জন্য আমরা মার্টিন ফওলারের বই " এন্টারপ্রাইজ ইন্টিগ্রেশন প্যাটার্ন " থেকে কিছু অনুশীলন প্রয়োগ করার চেষ্টা করেছি । তবে আমরা কেবল "শেয়ারড ডাটাবেস" প্যাটার্নটি ব্যবহার করতে সক্ষম হয়েছি এবং আমাদের সমাধানে সত্যই সন্তুষ্ট ছিল না।

উদাহরণস্বরূপ, আমরা একটি উইন্ডোজ পরিষেবা হিসাবে চলমান একটি ছোট ইউটিলিটি প্রয়োগ করেছি যা পিওপি 3 সংযোগ ব্যবহার করে মেল সার্ভার থেকে স্বয়ংক্রিয়ভাবে সমস্ত বার্তা ডাউনলোড করে সেগুলি একটি টেবিলের মধ্যে সঞ্চয় করে, যেখানে সমস্ত সংযুক্তি ফাইল সিস্টেমে সঞ্চিত থাকে।

আমরা মূলত যা করেছি আমরা হ'ল এমডিবি ফর্ম্যাটে এমএস অ্যাক্সেস ডেটাবেসগুলিতে অ্যাক্সেস করতে এবং ADD.NET ব্যবহার করে কিছু প্রক্রিয়াজাত ডেটা (যেমন উপরের উদাহরণ থেকে প্রাপ্ত মেল বার্তাগুলির ডেটা যেমন: আমাদের কাছে FROM, TO, সিসি, বিসিসি, বিষয় এবং বডি)।

নেট থেকে এমডিবি ডেটা ফর্ম্যাট নিয়ে কাজ করার কোনও সমস্যা নেই , তদুপরি আমরা এমডিবিতে থাকতে চাই না এবং এমএস এসকিউএল সার্ভার ২০০৮-এ প্রায় সব কিছু আপসাইজ করে থাকি - এটি আমাদের ডেটা ম্যানেজমেন্ট এবং স্কেলাবিলিটি সম্পর্কিত আরও অনেক স্বাধীনতা দেয়।

এখানে মূল সমস্যাটি হ'ল অ্যাক্সেসে কীভাবে "কলব্যাক" প্রয়োগ করতে হয় তা আমরা জানি না যাতে আমরা ডেটা আপডেটে কিছু নির্দিষ্ট ভিবিএ কোডের সম্পাদনকে ট্রিগার করতে পারি।

এমএস অ্যাক্সেস ২০১০ সমর্থনমূলক আপডেট এবং ডেটা টেবিলগুলির জন্য ট্রিগারগুলি সন্নিবেশ করানোর বিষয়ে আমাদের বড় আশা ছিল , তবে এটি প্রমাণিত হয়েছে যে আমরা কেবলমাত্র এই ট্রিগারগুলির জন্য এমএস অ্যাক্সেস ম্যাক্রো ব্যবহার করতে পারি এবং ট্রিগারটির মধ্যে কোনও কাস্টম ভিবিএ কোড কার্যকর করার উপায় নেই।

আমরা কিছু এমএস অ্যাক্সেস উইন্ডোতে কিছু ব্যবহারকারীর দ্বারা চালিত ডেটা প্রয়োজনীয়তার নকল করতে কীস্ট্রোকগুলি সরাসরি প্রেরণের সাথে কিছু সমাধান চেষ্টা করেছি । এটি কাজ করে, তবে আমরা মনে করি না এটি একটি বাস্তব সমাধান যা উত্পাদনে ব্যবহার করা যেতে পারে।

আমরা এমএস অ্যাক্সেসের জন্য ডিডিইতেও নজর রেখেছি, তবে ডিডিই কমান্ডগুলি প্রয়োগ করে এবং মেমোরি ডেটা এবং কমান্ড এক্সচেঞ্জের জন্য সেগুলি ব্যবহার করার জন্য আমরা কোনও ভাল নমুনা সমাধান পাইনি

সুতরাং, মূল সমস্যাটি হ'ল এমএস অ্যাক্সেস এবং। নেট অ্যাপ্লিকেশন সহ-বিদ্যমান এবং একে অপরের সাথে যোগাযোগ করা।

সম্পাদনা 2 :

আমি ভিবিএতে এমএসএমকিউ লাইব্রেরিটি কীভাবে প্রয়োগ করেছি তা উল্লেখ করতে ভুলে গিয়েছিলাম। নেট এবং এমএস অ্যাক্সেসের মধ্যে সমস্যাটি আবার কলব্যাকের অভাব ছিল: আমাদের সত্যই নতুন বার্তাগুলির জন্য সারিটি পোল করতে হয়েছিল এবং এই ভেবেছিলাম যে ভিবিএ সত্যিকারভাবে সমর্থন করে না মাল্টি-থ্রেডিং এটি সত্যিই খুব ভাল সমাধান ছিল না।


আপনি দুটি অংশকে কতটা সহযোগিতা করতে পারবেন তা দেখার জন্য আপনি একটি ছোট্ট প্রুফ-অফ কনসেপ্ট .NET অ্যাপ্লিকেশন করেছেন? আপনি কোন সমস্যার মুখোমুখি হয়েছিলেন?
sq33G

আপনার অ্যাক্সেস অ্যাপ্লিকেশন কীভাবে নিযুক্ত করা হয়? এবং প্রমাণীকরণ কৌশল কি?
Skrol29

@ এসকিউ 33 জি: আমি এই বিষয়গুলিকে সম্বোধন করতে আমার প্রশ্নটি সম্পাদনা করেছি।
আলেকজান্ডার গালকিন

@ স্ক্রোল 29: আমরা সাধারণত এমএস অ্যাক্সেস রানটাইম সহ একসাথে এমডিবি সংকলিত MDB (.MDE) হিসাবে স্থাপন করি dep আমরা ডাটাবেস সংযোগ এবং অনুমতিগুলির জন্য অ্যাক্টিভ ডিরেক্টরি মাধ্যমে পরিচালিত উইন্ডোজ প্রমাণীকরণ ব্যবহার করি।
আলেকজান্ডার গালকিন

3
দুর্দান্ত প্রশ্ন। এটি একটি খুব ব্যবহারিক সমস্যা যা দ্রুত বিকাশযুক্ত প্রচুর নন-সফ্টওয়্যার সংস্থাগুলি প্রায়শই মুখোমুখি হয় এবং বিকাশকারীদের কোলে নিক্ষিপ্ত হয় - যখন "সমস্ত কিছু করুন" অ্যাক্সেস ডাটাবেস তাদের ক্রমবর্ধমান প্রয়োজনীয়তাগুলি স্কেল করতে পারে না।
বাংলোস্টিংক

উত্তর:


17

এটি একটি বৃহত এবং খুব জড়িত প্রকল্প হতে চলেছে। আমি বহুবার .NET এ অ্যাক্সেস ডেটাবেসগুলি স্থানান্তরিত করার জন্য দায়বদ্ধ হয়েছি, তবে কখনও এই স্কেলে নেই। আমি একমত যে একটি ধীরে ধীরে পন্থা সম্ভবত সবচেয়ে বাস্তববাদী হবে। এক শটে সমস্ত কিছু গ্রহণ করার চেষ্টা করা ব্যর্থ হওয়ার সহজ উপায়।

অন্যান্য উত্তরের মতো, প্রথম এবং সবচেয়ে গুরুত্বপূর্ণ পদক্ষেপটি হবে এসকিউএল সার্ভারে সমস্ত কিছু সরিয়ে নেওয়া। এটি করার সময়, এটি ইতিমধ্যে সম্পন্ন না হলে ডাটাবেসটি নথি করুন এবং সেগুলি উপস্থিত থাকলে রিফ্যাক্টরিংয়ের জন্য অঞ্চলগুলি চিহ্নিত করুন। বিকশিত চাহিদা মেটাতে বেড়ে ওঠা ডেটাবেসগুলিতে প্রায়শই ডেটা মডেল থাকে যা বড় চিত্রটির দিকে তাকালে উন্নত করা যায়।

এরপরে, "স্বনির্ভর" অ্যাপ্লিকেশনটির মডিউলগুলি সনাক্ত করুন। যেহেতু এটি একটি করণীয় ডেটাবেস, সম্ভবত এটির মডিউলগুলি সম্ভবত একে অপরের থেকে সম্পূর্ণ বিচ্ছিন্ন। এই বিরক্তিহীন টুকরোগুলি থাকার পরে, আপডেট হওয়া থেকে সবচেয়ে বেশি লাভ করা ছোট মডিউলগুলির একটি সনাক্ত করুন এবং প্রথমে এটিকে গ্রহণ করুন।

.NET এ স্থানান্তরিত হওয়ার সময়, কেবল অ্যাপ্লিকেশনটির 1 থেকে 1 অনুলিপি করবেন না। বর্তমান অ্যাপ্লিকেশনটির সাথে ব্যথা পয়েন্টগুলি সনাক্ত করতে ব্যবহারকারীদের কাছ থেকে ইনপুট সংগ্রহ করুন। আপনি চান যে আপনার প্রথম মাইগ্রেশন ইউনিটটি সবার কাছ থেকে সম্পূর্ণ ক্রয় অর্জনের জন্য একটি বিশাল সাফল্য হোক।

আপনার প্রথম ইউনিটটি সম্পন্ন করার পরে, চ্যালেঞ্জ, অসুবিধাগুলি ইত্যাদির ক্ষেত্রে কী ঘটেছিল তা দেখুন এবং এটি এগিয়ে যাওয়া ব্যবহার করুন।

একটি বিষয় যা আমি দৃ strongly়ভাবে নিরুৎসাহিত করব তা হ'ল আংশিকভাবে কাজ করা মডিউলগুলি প্রয়োগ করা (উদাহরণস্বরূপ: "আমরা সিআরএম স্থানান্তরিত করেছি, তবে এক্স, ওয়াই, জেড বৈশিষ্ট্যগুলি নতুন সিস্টেমে এখনও নেই")। এটি যখন ব্যবহারকারীদের কাছে পুরানো "পুরোপুরি ঠিক" ছিল তখন একটি অসম্পূর্ণ সিস্টেম থাকা থেকে ব্যবহারকারীরা দ্রুত হতাশ হয়ে পড়বেন। এই জাতীয় বিকাশ অন্যান্য ডোমেনের জন্য ভাল কাজ করতে পারে, তবে ব্যবসাগুলিতে নয় যেখানে ব্যবহারকারীরা পুরানো অ্যাক্সেস একরকমের সাথে "কোনও ভুল নয়" দেখেন এবং মাইগ্রেশনের প্রয়োজনীয়তা বুঝতে পারেন না।


1
একাধিক ভাষাকে সমর্থন করতে সক্ষম হওয়া আরও সহজ হবে। আপনার একাধিক ভাষাগুলিকে সমর্থন করার নকশার সিদ্ধান্ত নেওয়া উচিত, স্পিফিক উপাদানগুলিতে বাঙ্গালস্টিংকে পরামর্শ হিসাবে আপনার মনোনিবেশ করা উচিত। আমি সমস্ত ফর্মের জন্য একটি বিন্যাস এবং প্রবাহ নিয়ে এসেছি, 100% সম্পূর্ণ নয় এমন কোনও ফর্মের সাথে স্পষ্টভাবে লিঙ্কিং এড়াতে এগুলি আংশিক কার্যকারিতা এড়িয়ে চলে।
রামহাউন্ড

7

রূপান্তরকরণের মাধ্যমে আপনার এমএস অ্যাক্সেস অ্যাপ্লিকেশনটিকে একটি ভিবি.নেট অ্যাপ্লিকেশন রূপান্তর করার জন্য এখানে এক ধরণের পরিকল্পনা রয়েছে।

এটি কোনও সাধারণ পরিকল্পনা নয়, নিম্নলিখিত পরিকল্পনাটি আপনার বর্ণিত প্রকল্পের উপর নির্ভর করে।

পদক্ষেপ 1: সমস্ত ডেটা এসকিউএল সার্ভারে স্থানান্তর করুন

এসকিউএল সার্ভারে সংযোগ অ্যাক্সেসের জন্য ওডিবিসি ব্যবহার করবেন না, পরিবর্তে একটি অ্যাক্সেস প্রকল্প (এডিপি) ব্যবহার করুন। অ্যাক্সেস প্রজেক্টটি একটি .adp এক্সটেনশন সহ একটি অ্যাক্সেস ফাইল, এতে সম্পূর্ণ অ্যাক্সেস বৈশিষ্ট্য রয়েছে (ম্যাক্রোস, ফর্ম, রিপোর্টস, মডিউল) তবে সংযোগটি এমডিবি ফাইলের পরিবর্তে সরাসরি এসকিউএল সার্ভার ডাটাবেসে থাকে। এডিপি ফাইলগুলি এমডিবি ফাইলগুলির সাথে খুব সামঞ্জস্যপূর্ণ। তারা অ্যাক্সেস 2010-এ সমর্থিত নয় বলে মনে হচ্ছে, যদিও বাস্তবে বৈশিষ্ট্যটি লুকানো রয়েছে তবে এটি খুব ভালভাবে সমর্থিত। এমডিইর মতো, এডিপি ফাইলগুলি এডিই ফাইলগুলিতে "সংকলিত" করা যায়।

এসকিউএল সার্ভারে স্থানান্তরিত করতে ডেটা স্ট্রাকচার এবং কোডে কয়েকটি পরিবর্তন করতে হবে তবে সমস্ত স্থানান্তরিত করা বেশ সহজ। এবং এটি সর্বোপরি একটি চূড়ান্ত লক্ষ্য।

ভিবিএ বা ভিবি.নেট কোডে ডাটাবেস ইভেন্টগুলি ট্রিগার করার কথা ভুলে যান। এটি প্রযুক্তিগতভাবে এসকিউএল সার্ভার বর্ধিত সঞ্চিত পদ্ধতি ব্যবহার করে করা যেতে পারে তবে এটি খুব খারাপ কৌশল। আপনার প্রকল্পের ভবিষ্যতের জীবন রয়েছে, সুতরাং এর জাতীয় কাঠামোগত সেতু এড়িয়ে তার ডেটা কাঠামো প্রয়োগ করা আরও ভাল। সাধারণভাবে, ডাটাবেস ট্রিগারগুলির সাথে খেলুন, এটি স্মার্ট তবে বজায় রাখা বেশ কঠিন।

পদক্ষেপ 2: প্রমাণীকরণ ইউনিফর্ম করুন

এটি খুব ভাল বিষয় যে আপনার অ্যাপ্লিকেশনটি অ্যাক্সেস সুরক্ষার (এমডাব্লু ফাইল) ভিত্তিতে নয়।

ভিবি.নেট অ্যাপ্লিকেশনটির জন্য লক্ষ্য প্রমাণীকরণের জন্য একটি পরিকল্পনা তৈরি করুন এবং তারপরে দুটি অ্যাপ্লিকেশনের মধ্যে অভিন্ন প্রমাণীকরণের জন্য এই লক্ষ্যটিতে অ্যাক্সেস প্রমাণীকরণের স্থানান্তরিত করার একটি উপায় নির্ধারণ করুন।

প্রমাণীকরণ যেহেতু কোনও অ্যাপ্লিকেশন আর্কিটেকচারে ট্রান্সভার্স, তাই ভিবি.নেট সংস্করণে অ্যাক্সেস সংস্করণটির মধ্যে টুকরো টুকরো করা আরও সহজ হবে।

পদক্ষেপ 3: অ্যাক্সেস এবং ভিবি.নেটের মধ্যে একটি ব্রিজ করার জন্য একটি টোকেন বৈশিষ্ট্য প্রস্তুত করুন

আপনি বলেছিলেন, অ্যাক্সেস ইউআইকে কিছু সঠিক পরামিতি এবং প্রমাণীকরণের সাথে একটি ভিবি.নেট ইউআই খুলতে হবে। এবং আপনি সম্ভবত অন্যভাবে একই কাজ করতে হবে।

টোকেন টেবিলের উপর ভিত্তি করে একটি ছোট টোকেন বৈশিষ্ট্য তৈরি করা ভাল সমাধান: কলামগুলি একটি টোকেন আইডি (পূর্ণসংখ্যা), একটি টোকন কী (দীর্ঘ স্ট্রিং), একটি টোকেন তারিখ এবং একটি প্যারামিটার তালিকা (দীর্ঘ স্ট্রিং বা পাঠ্য) হতে পারে। প্রতিবার অ্যাক্সেসের জন্য একটি ভিবি.নেট স্ক্রিন খুলতে হবে, তারপরে প্যারামিটারগুলির সাহায্যে ডাটাবেসে একটি টোকেন সংরক্ষণ করুন এবং তারপরে কেবলমাত্র টোকেন আইডি এবং টোকেন কী দিয়ে আপনার ভিবি.নেট অ্যাপ্লিকেশনটি খুলুন। ভিবি.নেট খোলে, ডাটাবেসে টোকেন আইডি অনুসন্ধান করে, কীটি পরীক্ষা করে (এটি একটি প্রমাণীকরণ হিসাবে প্রযোজ্য) এবং পরামিতিগুলি পড়ুন। তারপরে এটি সংশ্লিষ্ট ফর্মটিতে খোলা হবে এবং যা প্রয়োজন তা করুন। টোকেনগুলিতে একটি সময়কাল দিতে এবং পুরানো টোকেনগুলি পরিষ্কার করতে ভুলবেন না।

আপনার যদি ভিবি.নেট থেকে অ্যাক্সেসে কলব্যাকের প্রয়োজন (আপনি সম্ভবত এটি করতে পারেন) তবে আমি মনে করি যে ওএলই ব্যবহার করে একটি ওপেন এমডিবি অ্যাক্সেস ফাইলে কিছু ভিবিএ কোড সক্রিয় করা সম্ভব।

পদক্ষেপ 4: স্ক্রিন দ্বারা UI এবং মডিউলগুলির পর্দা স্থানান্তর করুন, মডিউল দ্বারা মডিউল

এখন বড় প্রস্তুতি সম্পন্ন হয়েছে। আপনি Ms অ্যাক্সেস থেকে ভিবি.নেটে ইউজার ইন্টারফেস স্থানান্তরিত করতে শুরু করতে পারেন।

এটি করার জন্য কোনও ভাল স্বয়ংক্রিয় সরঞ্জাম নেই। ভিবিএ এবং। নেট খুব আলাদা। আপনাকে এই ধরনের স্থানান্তরের জন্য আপনার কাজ প্রস্তুত করতে হবে। "সম্পর্কে" বাক্সের মতো একটি ছোট ফর্ম দিয়ে শুরু করুন এবং সাধারণ ফর্মগুলি থেকে জটিল আকারগুলিতে অবিরত করুন। অবশ্যই আপনাকে কিছু মাইগ্রেশন বান্ডিল করতে হবে এবং শিডিয়ুল করতে হবে, তবে আপনি ধীরে ধীরে আপনার পর্দা, প্রতিবেদন এবং লাইব্রেরিগুলি এমএস অ্যাক্সেস থেকে ভিবি.নেটে স্থানান্তরিত করবেন।


1

আমি অবাক হয়েছি যে আপনি অ্যাক্সেসের মাধ্যমে যা কিছু করেছিলেন। আপনি নেট নেট উইন্ডোজ ফর্ম বা। নেট ডাব্লুপিএফ জিজ্ঞাসা করছেন না একটি খুব গুরুত্বপূর্ণ প্রশ্ন আছে। ডাব্লুপিএফের একটি স্টিপার লার্নিং বক্ররেখা রয়েছে তবে আমার মতে এটি আরও ভাল ইউআই এর সাথে আরও শক্তিশালী। আমরা সম্প্রতি আমাদের বাণিজ্যিক অ্যাপ্লিকেশনগুলি ফর্মগুলি থেকে ডাব্লুপিএফ-তে রূপান্তর করেছি এবং ইতিমধ্যে আমরা আরও বেশি বিক্রয় পাচ্ছি। আমরা নতুন বৈশিষ্ট্যগুলিও যুক্ত করেছি তবে ডাব্লুপিএফ ইউআই কেবলমাত্র যৌনতর। আপনার টেবিল ডিজাইনটি পর্যালোচনা করুন এবং এটি পরিষ্কার করুন - এখন সময় এসেছে। নিশ্চিত হয়ে নিন যে আপনি আপনার সমস্ত এফকে ঘোষণা করছেন। অ্যাক্সেসে আপনি ফ্লাইতে স্টাফ যোগ করতে পারেন বেশ সহজ সময়ে যে জিনিসগুলি পিছলে যায়। এটি যদি আপনার প্রথম ডাব্লুপিএফ ইউআই হয় তবে কিছু প্রোটোটাইপ তৈরি করুন। আমরা ডাব্লুপিএফ-তে আরও প্যাক করতে পারি যে নতুন অ্যাপটিতে আরও বৈশিষ্ট্য রয়েছে, কম স্ক্রিন রয়েছে এবং অনেক কম কোড রয়েছে। আপনি এক্সএএমএলকে ঘৃণা থেকে শুরু করে এটি কতটা ভালবাসে। এমভিভিএমের মতো কাঠামো বিবেচনা করুন।


আমরা উইনফোর্ডস, ডাব্লুপিএফ এবং সিলভারলাইট (উভয়ই আরআইএ এবং ব্রাউজারের বাইরে) ব্যবহার করে বেশ কয়েকটি ছোট ছোট নেট অ্যাপ্লিকেশন তৈরি করেছি এবং আমি সম্মত হই যে ডাব্লুপিএফ (এবং সিলভারলাইট) অ্যাপ্লিকেশনগুলির জন্য অনেক বেশি যৌনদৃষ্টির চেহারা দেয় এবং অনুভব করে।
আলেকজান্ডার গালকিন

0

যেহেতু আপনার কাছে ইতিমধ্যে অ্যাক্সেস অবজেক্ট মডেলটি সম্পর্কে ভাল ধারণা রয়েছে তাই আমি মনে করি আপনি নিজের .NET অ্যাপ্লিকেশন থেকে অ্যাক্সেস ইন্টারপ ব্যবহার করতে চান । এটি (আরও বা কম) আপনাকে ডিডিইর অস্বচ্ছতা ছাড়াই কোনও অ্যাক্সেস অ্যাপের নিয়ন্ত্রণ স্বয়ংক্রিয় করতে দেয় should


যদিও আমি মনে করি এটি একটি ভাল ধারণা, যদি তারা অ্যাক্সেসের একটি পুরানো সংস্করণ ব্যবহার করে তবে তাদের প্রয়োজনীয় কার্যকারিতার স্তর থাকতে পারে না।
jfrankcarr

-1

আমি আপনার ব্যবসায়ের লজিক স্তর সম্পর্কে গভীর জ্ঞান জানি না তবে আপনি নিজের .NET অ্যাপ্লিকেশনটিতে আপনার এমএস অ্যাক্সেস ডেটাবেসগুলিও অ্যাক্সেস করতে পারেন। যদি এটি কেবল ডেটা আনার বিষয়ে না হয় তবে আপনি আপনার প্রোগ্রামগুলির (VB6 এবং VB.NET অ্যাপ্লিকেশন) মধ্যে একটি TCP / IP সংযোগ প্রয়োগ করতে পারেন। দয়া করে কোডপ্রজেক্টের একটি নিবন্ধটি দেখুন ।


"... এই অ্যাপ্লিকেশন এবং এমএস অ্যাক্সেস অ্যাপ্লিকেশন চলমানের মধ্যে ডেটা এক্সচেঞ্জ সক্ষম করুন।" যদি উক্তিটি আমার উত্তরের সাথে সম্পর্কিত না হয়। তাহলে আমি কেবল কিছুই জানি না।
ওসমান তুরান

ঠিক আছে. আমার ক্ষমা। ডাউনভোট সরানো হয়েছে।
আর্সেনী মোরজেনকো

@ মাইনমা: সমস্যা নেই।
ওসমান তুরান

1
আমি মনে করি, আমার উত্তরটি আপনার সম্পাদনার পরেও বৈধ। আমি দুটি উপায় সম্পর্কে উল্লেখ করেছি। এর মধ্যে একটিতে সরাসরি অ্যাক্সেস যা আপনার সম্পাদনার পরে অকেজো প্রকাশিত হয় এবং অন্যটি হ'ল এন-টিয়ার অ্যাপ্লিকেশন তৈরি করে। আমি মনে করি, আপনার আবেদনের মধ্যে আপনার একটি টিসিপি / আইপি প্রোটোকল প্রয়োগ করা উচিত। আপনি যদি একই মেশিনে আপনার অ্যাপ্লিকেশনগুলি চালাতে চান তবে আমি বিশেষত এই পদ্ধতির প্রস্তাব দিই। কারণ, আমার পুরানো অভিজ্ঞতায় আমি খুঁজে পেয়েছি যে এই জাতীয় ব্যবহারের জন্য ডিডিই খুব নির্ভরযোগ্য নয় এবং এটি সত্যই বিরক্তিকর। স্থানীয় অ্যাপ্লিকেশনগুলির জন্য আরেকটি পদ্ধতি কাস্টম সিস্টেম বার্তা (উইন্ডো বার্তা) ব্যবহার করা যেতে পারে।
ওসমান তুরান

1
দেখে মনে হচ্ছে আপনার আরও বড় সমস্যা রয়েছে :) কারণ, আমার প্রতিটি মন্তব্যের পরে, আপনি নতুন কিছু প্রকাশ করেছেন। আমি এমএসএমকিউ বিটিডব্লিউর সাথে পরিচিত নই। দুঃখিত।
ওসমান তুরান

-1

আপনি কীভাবে ভুল জিনিসটি করবেন তার সেরা অনুশীলনের জন্য জিজ্ঞাসা করছেন। একটিও নেই। সর্বোত্তম অনুশীলনগুলি কীভাবে কার্যকরভাবে একটি রক্ষণাবেক্ষণযোগ্য সিস্টেম তৈরি করতে পারে তা বোঝায়, যাতে কোনও বাস ক্র্যাশ হয়ে যায় এবং পুরো নতুন টিমকে শীত আসা দরকার, বিকাশ এবং সমর্থন অব্যাহত রাখতে পারে। আপনার বর্ণিত সিস্টেমটি বেশিরভাগ বিকাশকারীকে পাহাড়ের জন্য প্রেরণ করতে চলেছে। অপ্রচলিত প্রযুক্তিতে আপনার তৈরি পণ্য রয়েছে এবং আজকের প্রযুক্তির সাথে ইন্টারফেস করতে চান। এবং আপনি মূল পণ্যটির জন্য বর্ণিত কোনও বিরোধী নিদর্শনকে সম্বোধন করে তা করতে চান। যে বিকাশকারীরা এটি মোকাবেলায় ইচ্ছুক তারা সম্ভবত আপনার প্রস্তাবিত শর্তগুলির সাথে এটি করতে অনিচ্ছুক হবে।

তবে আপনার বাস ক্রাশ হয় নি তাই আপনি সিস্টেমটি বোঝে এমন বিদ্যমান দলকে উত্তোলন করতে পারেন। ধীরে ধীরে আমি যে সন্ধান পেয়েছি তার বিকাশের সেরা উপায় হ'ল Agile পদ্ধতি ব্যবহার ology এটি একটি পুনরাবৃত্তি প্রক্রিয়া সমর্থন করে যা উচ্চ ঝুঁকির প্রয়োজনীয়তাগুলিকে প্রথম দিকে সম্বোধন করে এবং ব্যবসায়ের প্রয়োজনীয়তার সুরাহা করে।


-2

আমরা ধীরে ধীরে আমাদের অ্যাপ্লিকেশন। নেট এর দিকে সরানোর সিদ্ধান্ত নিয়েছি

প্রায়শই একটি ভুল। সেরা অনুশীলন হ'ল "ধীরে ধীরে" চেষ্টা না করা।

যদিও এটি এখানকার বেশিরভাগ বিকাশকারীদের জন্য এটি একটি নতুন ভাষা, তবে আমাদের ভিবিএ এবং ভিবি 6-তে কার্যকর করা কয়েকটি ডজন ছোট ছোট প্রকল্পের গভীর জ্ঞান রয়েছে।

কোনও সিদ্ধান্তের জন্য খুব ভাল ভিত্তি নয়। আপনি যদি একটি নতুন ভাষা শিখতে চান তবে ভিবি শিখবেন না। সি # বা জাভা এর মতো আরও ভাল কিছু শিখুন।

"আমাদের বেশিরভাগ বিকাশকারীদের জন্য এখানে একটি নতুন ভাষা, আমাদের ভিবিএ সম্পর্কে গভীর জ্ঞান রয়েছে" এটি একটি সাধারণ কোড বাক্যাংশ যা "আমাদের একটি ভিবিএ গুরু রয়েছে যাকে আমরা বিরক্ত করতে চাই না" for এটিও সম্ভবত এটি খারাপ।

আমরা যা খুঁজছি তা হ'ল ধীরে ধীরে আমাদের বিস্তৃত জিইউআই স্থানান্তর করার জন্য সেরা অনুশীলন

সেরা অনুশীলনগুলিতে "ধীরে ধীরে" জড়িত না। এগুলিতে "পুরোপুরি ত্যাগ করুন" জড়িত।

ধীরে ধীরে যে মাইগ্রেশন আমি দেখেছি তা ভেঙে গেছে কারণ এটি এত শক্ত।

আপনি এটি করা ভাল।

  1. সবচেয়ে মূল্যবান সম্পদ সংরক্ষণ করুন । তথ্যটি. সমস্ত ডেটা এসকিউএল সার্ভারে সরান। এটার সবগুলো. এসকিউএল সার্ভারে ওডিবিসি সংযোগগুলি ব্যবহার করতে সমস্ত এমএস-অ্যাক্সেসের পুনরায় লিখুন। এখনই।

  2. অস্থায়ী টেবিল বা ডেটা বা এমএস-অ্যাক্সেসে যে কোনও কিছু তৈরি করে এমন কাউকে নষ্ট করুন। সমস্ত ডেটা অবশ্যই এমএস-অ্যাক্সেসের বাইরে একটি ডেটাবেজে থাকতে পারে। এমএস-অ্যাক্সেসের ডেটা হ'ল সমস্যাগুলির কারণ কী, তাই এখনই থামুন এবং নিশ্চিত হন যে সকলেই সম্মত হন। যদি তারা রাজি না হন তবে তাদের জন্য একটি নতুন চাকরি সন্ধান করুন যা এমএস-অ্যাক্সেস থেকে হ্যাকিংয়ের সাথে জড়িত না যখন আপনি এমএস-অ্যাক্সেস থেকে মুক্তি পাওয়ার চেষ্টা করছেন।

  3. একটি প্রতিবেদন কাঠামো সন্ধান করুন যা আপনার কাছে এখন যা আছে তার কাছে স্বয়ংক্রিয়ভাবে প্রতিবেদন তৈরি করবে। কোনও প্রোগ্রামিং নেই। কেবল এটি একটি টেবিল বা একটি দর্শন দিন এবং ঠুং ঠুং শব্দ! এটা শেষ

  4. সমস্ত 500 প্রতিবেদন গণনা করুন। এগুলি সহজেই সরঞ্জাম এবং সহজেই শক্তিশালী প্রতিবেদনের সাহায্যে তৈরি হওয়া রিপোর্টগুলিতে ভাগ করুন। হার্ডটিকে "আবশ্যক", "উচিত ছিল", "থাকতে পারে" এবং "পরে না করা উচিত" এর মধ্যে অগ্রাধিকার দিন the স্বয়ংক্রিয় প্রতিবেদনগুলি প্রতিস্থাপন করুন এবং এমএস-অ্যাক্সেসের বাইরে এই প্রতিবেদনের সরঞ্জামটি অবশ্যই প্রতিবেদন করা উচিত।

    আমার অভিজ্ঞতা হ'ল প্রায়শই প্রায় 20 বা তত রিপোর্টে একটি ডাটাবেস ভিউ পুনরায় ব্যবহৃত হয় used সেখান থেকে, আমি অনুমান করতে পারি যে আপনার 25 টি প্রাসঙ্গিক মতামত রয়েছে যা থেকে 500 টি প্রতিবেদন উত্পন্ন। যে কোনও সরঞ্জাম যা প্রতিবেদন উত্পাদন স্বয়ংক্রিয় করতে পারে তার বেশিরভাগ প্রতিবেদনের বেশিরভাগ হ'ল ভাল-নকশা করা এসকিউএল ভিউগুলির একটি ছোট সেট থেকে পরিচালনা করা উচিত। কয়েকটি প্রতিবেদন স্বয়ংক্রিয় সরঞ্জামের জন্য খুব জটিল বা কঠিন হবে।

  5. এমন একটি বিকাশ কাঠামো সন্ধান করুন যা স্বয়ংক্রিয়ভাবে সিআরইউডি লেনদেন তৈরি করে।

  6. আপনার 200 ফর্মগুলি সিআরইউডি ফর্মগুলিতে ভাগ করুন (যা স্বয়ংক্রিয়ভাবে নির্মিত হতে পারে) এবং নন-সিআরইউডি ফর্ম। অ-সিআরইউডি-র মধ্যে, মোসকোডাব্লু (অবশ্যই, উচিত, পারে, না) নিয়ম ব্যবহার করে অগ্রাধিকার দিন।

    প্রায়শই, 60-80% অ্যাপ্লিকেশন ফর্মগুলি সহজ, স্বয়ংক্রিয় CRUD ফর্ম। 20-40% আরও জটিল এবং আরও দক্ষ প্রোগ্রামিং প্রয়োজন। এর ভিত্তিতে, আপনার 120 থেকে 160 সিআরইউডি ফর্ম রয়েছে যা আপনার পুনরায় লেখার দরকার নেই, কেবল স্বয়ংক্রিয়। আপনার 40-80 টি গুরুতর জটিল লেনদেন রয়েছে।

  7. সিআরইউডি ফর্মগুলি এবং অবশ্যই থাকা-নন-সিআরইউডি ফর্মগুলি তৈরি করুন।

  8. ফাঁকগুলি মূল্যায়ন করুন। পুনরায় অগ্রাধিকার দিন এবং "হওয়া উচিত" তালিকার সর্বাধিক গুরুত্বপূর্ণ অংশগুলিতে কাজ শুরু করুন।

সম্পূর্ণরূপে অ্যাক্সেস বাতিল করা সম্ভবত সবচেয়ে সহজ। ধীরে ধীরে ধীরে ধীরে এড়িয়ে চলুন।

আপনি শেষ পর্যন্ত সমস্ত অর্থ ব্যয় করতে যাচ্ছেন।

আপনি এটির জন্য বাজেটও করতে পারেন এবং এখনই ব্যয় করতে পারেন।

সহাবস্থান পরিচালনা করার চেষ্টা করার জটিলতার কারণে ধীরে ধীরে এটি করার চেষ্টা করা আরও ব্যয়বহুল হতে পারে ।


9
এটি সব সুন্দর, তবে বাস্তববাদী নয়। বিশেষ করে "যে কাউকে গুলি চালানো" এবং "সম্পূর্ণরূপে বিসর্জন" দিয়ে অংশ। আমরা কেবল সমস্ত কিছু ফেলে দিতে এবং সবুজ ক্ষেত্র থেকে শুরু করতে পারি না, আর্থিক, কৌশলগত এবং ব্যক্তিগত দৃষ্টিভঙ্গি উভয়ই।
আলেকজান্ডার গালকিন

8
-1 আপনার অভিজ্ঞতা মহাবিশ্বের মোট যোগফল নয়। যদিও আমরা সকলেই একটি নিখুঁত বিশ্বে বাস করতে পছন্দ করব যেখানে আমরা অবিলম্বে সংস্কৃতি পরিবর্তন করতে পারি এটি বাস্তবতা নয়। কিছু প্রমাণিত প্রযুক্তির বিরুদ্ধে আপনার পক্ষপাতিত্ব অন্যান্য সম্ভাব্য সমাধানগুলি দেখার আপনার ক্ষমতাকে মেঘায়িত করে। আপনি সমস্যার সমাধানের জন্য সেরা উপায়টি বানিয়েছেন ওপির জন্য নয়।
SoylentGray

4
দুঃখিত প্রায়শই একটি ভুল জন্য এটি -1 ছিল সেরা অনুশীলন হ'ল "ধীরে ধীরে" চেষ্টা না করা। - এই 'সেরা অনুশীলনের' জন্য আপনার কাছে প্রশংসা কি আছে? কারণ বেশিরভাগ লোক এর বিপরীতে বলবে - joelonsoftware.com/articles/fog0000000069.html
ম্যাটডাভে

2
"কারণ বেশিরভাগ লোকই এর বিপরীতে বলত"। আমি যে গ্রাহকদের সাথে কাজ করেছি তার চেয়ে বেশিরভাগ লোকই স্মার্ট। তাদের জন্যে ভালো. দুর্ভাগ্যক্রমে, আমাকে বড়, খারাপ এমএস-অ্যাকসেস অ্যাপ্লিকেশন সহ বেশ কয়েকটি গ্রাহকের সাথে কাজ করতে হয়েছিল যার জন্য পাইকারি পুনরায় লেখাগুলির প্রয়োজন ছিল কারণ তারা ধীরে ধীরে স্থানান্তর করতে পারেনি। এটা আমার অভিজ্ঞতা। এটাই আমার উদ্ধৃতি আমি দুঃখিত আমার অভিজ্ঞতাটি অনন্য বলে মনে হচ্ছে।
এস.লোট

4
@ এস.লট আমি মনে করি যে কোডটি একটি মানের চেয়ে দায়বদ্ধতার বেশি extreme ওপি যা কিছুই বলেছিল তা নির্দেশ করে না যে এটি কাজ করে না বা ব্যবসায়ের চাহিদা পূরণ করে না - আসলে "আমরা অ্যাপ্লিকেশনটির বর্তমান কার্যকারিতা নিয়ে বেশ সন্তুষ্ট" । নিখুঁতভাবে কার্যকরী কোড বিনের দরকার নেই বলে মনে হচ্ছে - ক্যান্সার কাটাতে হবে না। তবে ওপি সনাক্ত করেছে যে ভবিষ্যতে উন্নতি করার জন্য তাকে অ্যাক্সেসের দ্বারা আরোপিত কাচের সিলিংটি ভেঙে ফেলতে হবে - এটি ধীরে ধীরে প্রক্রিয়া হতে পারে।
ম্যাটড্যাভে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.