網智數位-軟體開發(軟件開發)
針對各特殊產業都可以量身定做符合貴公司的需求,別人無法克服的就是我們的挑戰
業務合作、軟體委外開發
業務窗口:allen@netqna.com
聯繫電話:0920-883-870
skype: netqna
line:netqna
微信:netqna
黃先生 Allen
網智數位主要提供套裝及客製化的軟體系統解決方案,專為客戶量身訂做客製化的軟體,達成客製化、智慧化及網路化的管理功能。
網智數位主要提供套裝及客製化的軟體系統解決方案,針對室內設計師、木工、裝潢業產業,量身訂做客製化的軟體,達成客製化、智慧化及網路化的商用軟體。
網智數位主要提供套裝及客製化的軟體系統解決方案,專為客戶量身訂做客製化的軟體,達成客製化、智慧化及網路化的管理功能。
根據客戶實際狀況,結合雲端與載具進行客製化物聯網IOT導入與軟體開發
我們的雲端VPS虛擬主機是採用雲端(虛擬化)技術所開發之全新雲端伺服器服務,可以選擇多種作業系統(Windows、Linux等),客戶可載入自訂的應用環境,執行自己所要提供的網路服務,我們的雲端服務可為您的網站提供最完美的解決方案。
ERP軟體客製化導入,室內設計、營造業、裝潢、木作工程、系統櫃工程、會計系統,全面提升公司管理營運效率。
搜尋引擎最佳化(SEO)不僅能提高網站在搜尋結果的排名,更能帶來大量對我們產品或服務真正有需求的訪客。SEO 最棒的特質之一就是不像廣告一樣亂槍打鳥而導致用戶的反感,反而更能提升點閱率跟成交率喔。
這篇文章主要是續之前另外一篇文章 UDP 網路通訊處理,這次是繼續講解 TCP 網路通訊處理,與UDP 協定不同的是,TCP協定是更加嚴謹,它是基於確認連接是可靠性的,也就是在發生通訊傳輸前,客戶端(Client)必須確認是連接到伺服器(Server)端,因為 TCP 對數據封包的次序與完整性要求相對嚴格,這樣才能確保數據傳輸過程可以正確無誤地送達目的地,所以 TCP 就常用在 文件的傳送,如Line聊天的檔案傳送、Skype 檔案的傳送等。
在 Widnows 10 Universal APP 平台下(UWP ),是透過一個 StreamSocket 類別來提供 TCP 網路通訊傳輸協定的 Socket 功能.
在 Client 端(客戶端)大致我們遵守以下幾個步驟:
1.建立一個 StreamSocket 實體物件。
2.呼叫 StreamSocket.ConnectAsync 方法,來與 Server 端作連接要求。
3.使用 OutputStream 屬性所返回的輸出流(Stream),就可以進行發送資料;
而 InputStream 屬性則是返回輸入流,是用在接受資料。
4.切記當不再使用 Socket 時,呼叫 Dispose 方法來釋放其所佔用的相關資源。
在 Server 端 (伺服器),我們則需要使用一個 StreamSocketListener 物件,綁定繫結 本機的位址跟Port,來監聽 客戶端(Client)的連接請求服務,而當監聽到客戶發出的請求服務時,會引發另外一個事件 ConnectionReceived 事件,從這個事件的Arg參數,我們可以獲取一個與客戶端進行通訊的 StreamSocket 物件。
上面簡單描述原理,以及程式撰寫大致步驟原理,我一樣習慣來個實際寫作案例來引導,我一樣為了簡單化,我把 Server 端界面與 Client 端界面放在一起,這樣這個範例程式可以充當伺客戶器角色也可以當客戶端角色,在實作案例中 客戶端可以選擇一個圖片已經輸入一些文字內容來描述圖片,最後可以發送圖片跟文字內容給伺服器端,當然伺服器端會馬上監聽到有傳輸服務請求,立即結束資料,並顯示在伺服器端的界面。
系統畫面如下圖
(Server 端)
(Client 端)
下面是相關的界面 XAML Code:
<Pivot>
<PivotItem Header="伺服器(Server 端模擬)">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition />
</Grid.RowDefinitions>
<StackPanel>
<TextBlock Text="Server IP Address:" Height="30" Margin="0,0,-0.333,0"/>
<TextBlock x:Name="tbSvIP" FontSize="24" IsTextSelectionEnabled="True" Height="30" Margin="0,0,-0.333,0"/>
</StackPanel>
<ListBox Name="lbItems" Grid.Row="1" Margin="6,15,6,5">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Image Width="50" Height="50" Stretch="UniformToFill" Source="{Binding Path=Image}"/>
<TextBlock Grid.Column="1" TextWrapping="Wrap" FontSize="18" Text="{Binding Path=Text}" Margin="15,0,0,0"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</PivotItem>
<PivotItem Header="客戶端(Client 端模擬)">
<StackPanel>
<TextBox Name="txtServerIp" Header="伺服器IP:"/>
<Image Name="img" Width="150" Height="150" HorizontalAlignment="Left"/>
<Button Content="挑選圖片..." Click="OnPickImagFile"/>
<TextBox Name="txtContent" Header="圖片描述:" Height="120"/>
<Button Content="傳送資料" HorizontalAlignment="Stretch" Click="OnSend"/>
</StackPanel>
</PivotItem>
</Pivot>
現在來看主要核心程式碼
一開始我宣告 一個 LISTEN_PORT=“1688”,作為 Server 端監聽的端口。
然後也宣告一個 StreamSocketListener 類別的 listener 欄位。
相關程式我也詳細註解了,主要是在 Loaded事件時,建立對應的監聽事件 ConnectionReceived 、以及使用 BindServiceNameAsync 方法指定監聽的Port。
接下來重點在 ConnectionReceived 事件,專門用於接受到 Client 端發出的請求數據。
private async void listener_ConnectionReceived(StreamSocketListener sender, StreamSocketListenerConnectionReceivedEventArgs args)
{
string text = string.Empty;
IRandomAccessStream imgStream = new InMemoryRandomAccessStream();
// 處理從 Client 端接受到的訊息
using (StreamSocket socket = args.Socket)
{
using (DataReader reader = new DataReader(socket.InputStream))
{
try
{
// 讀出第一個數字,表示文件的長度
await reader.LoadAsync(sizeof(uint));
uint len = reader.ReadUInt32();
await reader.LoadAsync(len);
IBuffer buffer = reader.ReadBuffer(len);
// 寫入 Stream
await imgStream.WriteAsync(buffer);
await reader.LoadAsync(sizeof(uint));
// 再次讀入字串長度
len = reader.ReadUInt32();
// 讀出字串的內容
if (len > 0)
{
await reader.LoadAsync(len);
text = reader.ReadString(len);
}
}
catch (Exception ex)
{
DisplayErrMessage(ex.Message);
}
}
}
// 顯示接受到的客戶端訊息內容
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
BitmapImage bmp = new BitmapImage();
bmp.DecodePixelWidth = 50;
imgStream.Seek(0);
bmp.SetSource(imgStream);
imgStream.Dispose();
lbItems.Items.Add(new { Image = bmp, Text = text });
});
}
再來 Client 端,主要是選好圖片內容、以及輸入文字描述後,執行【傳送資料】按鈕,而對應的程式碼,如下,我也寫上對應的註解
private async void OnSend(object sender, RoutedEventArgs e)
{
if (txtServerIp.Text.Length == 0)
{
DisplayErrMessage("請輸入伺服器服的IP位置");
return;
}
IBuffer bufferImg = img.Tag as IBuffer;
if (bufferImg == null)
{
DisplayErrMessage("請選擇圖像");
return;
}
Button b = sender as Button;
b.IsEnabled = false;
using (StreamSocket socket = new StreamSocket())
{
try
{
// 發出連線請求
await socket.ConnectAsync(new HostName(txtServerIp.Text), LISTEN_PORT);
// 準備傳送資料(圖片跟文字)
using (DataWriter writer = new DataWriter(socket.OutputStream))
{
// 首先寫入圖片
uint len = bufferImg.Length;
writer.WriteUInt32(len); //長度
writer.WriteBuffer(bufferImg);
// 寫入文字內容
if (txtContent.Text.Length == 0)
{
writer.WriteUInt32(0);
}
else
{
len = writer.MeasureString(txtContent.Text);
writer.WriteUInt32(len); //長度
writer.WriteString(txtContent.Text);
}
// 正式提交
await writer.StoreAsync();
}
txtContent.Text = "";
}
catch (Exception ex)
{
DisplayMessage(ex.Message);
}
}
b.IsEnabled = true;
}
整個程式執行結果畫面
(客戶端)
(伺服器端)
網智數位-軟體開發(軟件開發)
針對各特殊產業都可以量身定做符合貴公司的需求,別人無法克服的就是我們的挑戰
業務合作、軟體委外開發
業務窗口:allen@netqna.com
聯繫電話:0920-883-870
skype: netqna
line:netqna
微信:netqna
黃先生 Allen
今年公司承包了許多大型專案,都是必須用到網路存取技術,例如 圖控軟體我們就必須透過 TCP 協定跟硬體設備溝通,來讀取上萬台工業風扇裝置的轉速、溫度等訊息;再來還有影像監控軟體也是大量用到TCP/UDP、Web API網路協定存取,因此在開發各種軟體時,很多機會勢必需要用到網路通訊的技術。
而這篇教學技術文章,我特別是針對微軟的 Windows 10 平台上,也就是所謂的 Windows 10 通用應用開發(Universal APP,UAP),示範關鍵的程式技術,我想分為 2 篇文章分別介紹 UDP 與 TCP 存取技巧,而這篇文章就先針對 UDP協定來介紹,UDP協定是個無連接(不可靠)的協議,它只提供資料的不可靠傳遞,它一旦把應用程式發給網路層的資料傳送出去,就不保留資料備份(所以UDP有時候也被認為是不可靠的資料報協定),UDP在IP資料報的頭部僅僅加入了復用和資料校驗(欄位),但它相對于TCP 協定來說,資源耗用少、而且處理速度夠快,所以常被用在傳輸要求沒有那麼嚴格的條件下,例如:聊天訊息、網路視訊、語音傳遞。
在 WIndows 10 的 UAP/UWP 平台上,微軟透過一個 DatagramSocket 類別來封裝了所有有關 UDP 網路存取的相關功能。
我將示範 伺服器端(Server) 與 用戶端(Client) 的程式技巧
在 Server 端,主要步驟有
1.建立一個 DatagramSocket 實體物件。
2.建立一個對應的 MessageReceived 事件,它將用來接收 Client 發送的訊息。
3.使用 BindEndPointAsync 方法來綁定本機的位址(IP)、端口(Port),如果是需要本機的所有網路位址(有多張網卡、無線網路等)都可以監聽訊息,我們就改用 BindServiceNameAsync 方法,然後只要指定要擊結對應的Port即可。
而在 Client 端,主要是一樣建立一個 DatagramSocket 實體物件,在透過該 DatagramSocket 提供的 GetOutputSteamAsync() 方法,並在該方法傳入 Server端IP位址、Port即可。
在 XAML 界面我為了好示範,我將 Server 界面跟 Client 界面 放在一起,分別為2個頁籖,這是使用 <Pivot> 元素 (我在這邊不花時間解釋 XAML Code 知識,但開發 Windows 10 XAML 是必備的基本語法,一定要會而且很熟,我就特別喜歡 XAML Code)。
XAML 畫面如下圖
<Pivot>
<PivotItem Header="Server 伺服器端">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition />
</Grid.RowDefinitions>
<StackPanel>
<TextBlock Text="Server IP地址:" FontSize="20"/>
<TextBlock Name="tbIp" FontSize="36" IsTextSelectionEnabled="True"/>
</StackPanel>
<ListView Grid.Row="1" Margin="0,15,0,3" Name="lvMsg">
<ListView.Header>
<TextBlock Foreground="LightGreen" Text="已截取的Client端請求" FontSize="20"/>
</ListView.Header>
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Margin="6,20">
<TextBlock FontSize="20" Foreground="Yellow">
来自
<Run Text="{Binding Path=FromIP}"/>
的消息:
</TextBlock>
<TextBlock TextWrapping="Wrap" FontSize="24" Text="{Binding Path=Message}"/>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</Grid>
</PivotItem>
<PivotItem Header="Client 端">
<StackPanel>
<TextBox Name="txtServer" Header="Server IP:"/>
<TextBox Name="txtMessage" Header="發送訊息內容:" TextWrapping="Wrap" Height="200"/>
<Button HorizontalAlignment="Center" Content="送出" Padding="20,0" Click="OnSend"/>
</StackPanel>
</PivotItem>
</Pivot>程式運行畫面如下圖
(Server 頁籖)
(Cilent 頁籖)
看完主要的界面宣告與結果,就開始來講解幾個主要核心程式碼
步驟 1.首先我宣告了 1 個常數 servicePort ,用於指定伺服器服務的端口Port.
再宣告 2 個欄位(Fields), 作用於 Server UDP 與 Client UDP。
步驟 2.在 MainPage 建構子,宣告了載入實際時 綁定 Server 與 Client 端的 UDP Socket 。
以及 Unload 時,釋放資源。
還有 我還綁定一個 Server 端要監聽 Client 端發送的訊息請求事件
步驟 3. Server 監聽事件 ,核心程式碼邏輯
相關程式碼,都附上註解
在上述 步驟 1 ~ 步驟 3 ,就完成 Server 端的主要監聽任務。
而 Client 端接下來的邏輯,就是在 Client 頁籖界面,輸入 Server 的 IP 位址、端口,以及要發送的內容,相關程式碼邏輯如下
OnSend() 是在 Client 頁籖界面,執行【送出】按鈕對應的動作方法
以上完成後,讓我們就可以來執行看看
在 Client 端頁籖 輸入訊息內容
在 Server 端監聽到的訊息如下
網智數位-軟體開發(軟件開發)
針對各特殊產業都可以量身定做符合貴公司的需求,別人無法克服的就是我們的挑戰
業務合作、軟體委外開發
業務窗口:allen@netqna.com
聯繫電話:0920-883-870
skype: netqna
line:netqna
微信:netqna
黃先生 Allen
今天早上在跟客戶開會時,客戶提到有個需求,就是客戶的員工需要常常瀏覽購物平台網頁商品、資訊,但必須及時截取畫面拍照,所以 Allen 我就開發一個小工具,可以讓使用者瀏覽網頁時,進行截取網頁畫面並轉成圖片檔。
(圖示1)
而這個程式我用目前最新的平台(Windows Universal Platform)開發,因為是用短短 1小時的時間進行程式撰寫,所以功能比較陽春,但可以當做教學跟小工具使用,所以我就拿出來分享。
一開始在上方的 網址 輸入,你要瀏覽的網頁,例如 http://tw.yahoo.com , 然後在點選瀏覽,就會載入 Yahoo 的網頁,此時你可以按左邊(中間偏下一點)有個按鈕【截取畫面】,執行後就會截取現在瀏覽的網頁“畫面”,
(圖示 2)
(圖示 3)
如果想要把網頁快照轉成圖片,我也寫了一個小功能的按鈕【將畫面存成圖片】,就可以存成實際的圖片。
這樣就可以把網頁畫面及時拍照存檔,這個是個小範例,但是這個技術在知名的電子商務平台,例如 PCHome、Yahoo、淘寶等,都有類似的機制,就是你在訂購商品那瞬間,程式會把當時的產品訂購頁面存成及時圖片,以防止未來買賣有發生爭議時,可以作為交易的依據。
同時,我也把安裝程式放在 DropBox,因為我開發的平台為 Windows Universal APP,所以安裝方式請打開 powershell 直接把 Add-AppDevPackage.ps1 檔案拖拉到powershell 畫面,再按 Enter 鍵即可。
程式下載點
https://www.dropbox.com/s/673eet6odd4gyyk/NetQna_1.0.5.0_Debug_Test.rar?dl=0
下一篇,我會講解核心程式碼技巧(待續)
網智數位-軟體開發(軟件開發)
針對各特殊產業都可以量身定做符合貴公司的需求,別人無法克服的就是我們的挑戰
業務合作、軟體委外開發
業務窗口:allen@netqna.com
聯繫電話:0920-883-870
skype: netqna
line:netqna
微信:netqna
黃先生 Allen
網智數位-軟體開發,專門針對客戶進行量身設計的客製化軟體,已有多年經驗,也在不同產業領域都有實作成功案例。
(作者其他參考文章)
MPS主生產計畫專文介紹(一)
MRPⅡ/ERP 能力需求計畫原理
庫存管理-概念與釐清
庫存管理探討-VMI
真正的庫存量形成探討
庫存管理的中樞控管法則(上)
庫存管理的中樞控管法則(下)
庫存目標6大範疇(程式開發、程式設計、軟體開發、系統開發)
BOM表管理與設定﹣輔料是否需輸入BOM
何謂 進銷存、ERP、WMS?三者差異性【軟體開發、軟件開發、程式設計】
ERP 產品成本管理與計算
庫存量正確性衡量法則
粗能力需求計畫(RCCP) - 專文介紹
如何利用軟體來協助企業銷售統計和分析
開發進銷存、ERP、PDM,物料欄位收集與建立重要性(ERP開發、軟體開發、進銷存)
ERP 各種計劃階段的差異
ERP 系統的淺談與優勢
ERP 系統在中小企業如何有效利用條碼與QRCode
[ ERP/MRP 系統 ] - 專案導入深入剖析
ERP 導入的投資報酬評估(ERP客製化、進銷存軟體)
ERP 與 CRM 整合對企業的重要性(軟體開發、ERP客製化)
ERP思維突破:啟動企業智能革命,引領未來行銷新浪潮
AI時代的ERP:釋放企業潛能的新革命
一直突破開發技術、累積各種產業知識,而且在出版業、室內設計裝潢業、製造業、機電顧問、貿易、地板、窗簾、窗材、拉門、布料業的商業管理軟體投入有特別的領域知識、也在圖控軟體(圖控軟件)、機械手臂、 Android APP 、iPhone APP、3D列印 開發一直突破再創新,我們也堅持相信好的軟體可以協助企業,不管在管理營運角度、商品創新、決策分析等都絕對是不可缺少的關鍵因素,如果客戶您有任何軟體開發、程式開發委外需求,請聯繫我們讓我們協助您一起討論如何開發一個好的軟體來協助您。
今天網智數位跟高苑科技大學雙方在【2016年台北國際發明暨技術交易展】簽訂合作簽約儀式,在技術研發創新多個隊伍下,得到最高獎項- 聲控避障智慧導盲系統,該「聲控避障智慧感應系統」研發技術可以運用「顏色導盲」,能讓視障者接受系統語音導盲走在正確的人行道上;搭配使用特製的智慧導盲拐杖或鞋子,能用超音波感測模組感測前方障礙物;行動 App 則可定時播報當前時間、視障者位置與紅綠燈訊號,用以提醒視障者。
上圖從右邊依序為 網智數位執行長 Allen、高苑科技大學 謝金原(教授)、台灣雲創營運長(Kevin)
公司在承包專案、量身定做開發客戶的企業軟體多年,在接案驗收過程中,10件有8件專案,客戶的使用者總是想要再多增加那個功能、這個功能,好像沒有導入系統軟體是都沒有需求,但導入後,期待需求越來越多…當然在我們、以及客戶來說,都是成本的增加(不過總是有些客戶….認為預算無法增加,功能要無止境增加,客官….軟體開發真的是很辛苦的….XD)
就是因為系統功能是靜態的不變的,該有幾支程式功能就是那幾支程式功能在那裡,可是企業的經營是動態的、不斷地與時俱進,所以企業組織會改變,明天老闆、主管要的報表會不一樣,後天可能要刮風或下雨各種突發原因,企業就是這樣一直動態的向前進。組織改變可以重新設定部門組織檔,流程改變可以調整系統參數,但是老闆要的報表是天天在變,天天寫報表也不是辦法!
為了因應這樣的狀況,市場上出現了BI (Business Intelligence,商業智慧)的軟體,還有報表產生器(例如Crystal Report)…等等的軟體、以及各種大數據分析平台,這些都是很好的商用軟體與工具,但是這些軟體很顯然的有下列幾項要求:
1.這些軟體是提供給IT人員設定、維護,再提供給User使用的。
2.需要額外投資一筆軟體建置費用。
3.艱深如BI的軟體,還需要龐大的顧問導入費用。
4.需要具有一定專業技術的人才。
所以對於這樣單次性、個別性、或變化性高的報表,使用者的內在需求往往是,我只是要把畫面上的資料可以轉到EXCEL上,再讓我加工處理就好了。在BI、數據分析軟體建置之前,在IT人員設計開發報表之前,這麼簡單的需求難道我還需要等嗎?
歷經多年的IT打滾經驗後,我遇到客戶的使用者提出這樣的要求,常常有時候,我只能告訴他,這樣吧,我把Table schema給你,再教你寫些簡單的SQL Select的statement;我跟當年創造SQL指令的宗旨一樣的天真,認為這樣就應該已經解決他的問題了。事實上這樣的工作,對於非專業的IT人員來說,是非常非常的困難;對於IT人員來說,又是一件非常非常無趣的工作,因為他從來不知道他做這件事情的意義。
假如,你的ERP可以很彈性的把畫面上的資料轉到EXCEL,是不是就解決掉ERP系統『永遠缺少的那一支程式』的問題,最好可以做到下列幾項要求:
1.可以指定要轉出的資料條件(Records);可以指定要轉出的資料項(Fields)。
2.可以用List的方式轉出,以便統計分析,例如銷售明細月報表。
3.可以用Report的方式轉出,以便套印單據,例如Invoice、Packing List、…。
4.最好可以套用EXCEL範本,把資料轉到已事先做好的樞紐分析表、或Invoice格式之中,
這樣就可以不用每次轉出後都要再加工一次。
PS.Excel 真的也是事後梳理資料的好工具….但絕對是要先有好的流程企業管理軟體,在各種單位部門、流程控管整合所有表單單據、系統累積了營運管理數據,就可以真正達到【數字管理】目標了。
網智數位-軟體開發(軟件開發)
針對各特殊產業都可以量身定做符合貴公司的需求,別人無法克服的就是我們的挑戰
業務合作、軟體委外開發
業務窗口:allen@netqna.com
聯繫電話:0920-883-870
skype: netqna
line:netqna
微信:netqna
黃先生 Allen
這1~2年來從雲端的夯議題到現在幾乎每天都會談到的物聯網(IOT),除了我常被客戶詢問相關合作機會跟也常被詢問何謂物聯網,今天看到台灣微軟的教學影片,它詳細介紹了相關技術已經微軟的物聯網與Azure雲端平台的運用介紹。
網智數位在物聯網的軟體開發有相關的技術團隊,可以量身訂做為客戶設計各種感應器的數據分析、以及雲端平台的整合應用,我們目前也正在開發了瓦斯安全裝置的物聯網應用、無人櫃檯的旅館結帳系統等。
以下就是微軟的教學影片,有興趣的真的可以花一些時間觀看。(影片來自微軟 Chanel 9)物聯網世代已勢在必行!有了 Microsoft Azure 物聯網服務,您就可以監控資產來提升效率、提高營運效能來推動創新,利用進階資料分析,透過新的商業模式和收入來源讓您的公司轉型~~
https://www.youtube.com/watch?v=yF2S7nLVz9I&feature=youtu.be
網智數位-軟體開發(軟件開發)
針對各特殊產業都可以量身定做符合貴公司的需求,別人無法克服的就是我們的挑戰
業務合作、軟體委外開發
業務窗口:allen@netqna.com
聯繫電話:0920-883-870
skype: netqna
line:netqna
微信:netqna
黃先生 Allen
今天 Allen 我想教大家如何在設計網頁時,透過簡單的 CSS 語法,來做到簡易的動畫效果,而且過程完全用不到 Java Script 語法….在 animation 相關屬性的部份,可以使用的 CSS 屬性有:
這邊我們是直接使用 CSS Animation Level 1 所定義的 CSS 規則,而想學習更詳細的功能定義,可以花時間閱讀 http://www.w3.org/TR/css3-animations/ .. 這邊我只簡單列舉我們常會用到的屬性列表,列表如下:
網智數位-軟體開發團隊,累積了超過10年開發中小企業的管理軟體(軟件)委外案,有超過 8 成比例都是完全從無到有,量身訂做去了解客戶的營運流程、現行文件(例如 Excel、Word、PDF)、紙上紙本,大量收集後,跟業主不斷的溝通了解,並給出適當的系統開發建議,目的就是協助客戶從繁雜的作業流程、人工作賬、紙上作業、傳真文件等,開發客戶合適的管理軟體。
上圖就是新竹與台南某廠商客戶,因為長期以來被大量客戶的文件測試報告、檢驗報告,各種客戶所該維護的專案、委託案、以及該專案需派工的檢驗人員、檢驗統計數字、是否需要複查等各種作業模式所困擾,以往光單單人工作業、紙本查詢可能就需要花上人力成本超過5~10天,而現在經過 網智數位-軟體開發團隊,進入分析與建議並開發該作業模式的管理系統軟體(軟件),該軟體可以協助客戶,進行企業的客戶管理(CRM)、以及迅速通知那些專案目前有發生需要追蹤、系統跑出各種統計圖表、歷年的專案報告匯出和匯入,案子的各式圖片管理等,迅速達到委託我們開發軟體的客戶管理績效,所以好的軟體管理系統是可以迅速提升企業的效率與效益。
我們自豪地宣布,日本知名設計公司 – 日台設計 ,已選擇與網智數位合作,導入最新科技,升級他們的企業管理系統。 在競爭激烈的設計產業中,如何提高效率、降低成本並實現創新一直是各大設計公司所關注的重要議題。網智數位很榮幸能成為知名日商設計公司-日台設計有限公司的...