mutanic
Super Active Member
- Messages
- 5,538
- Joined
- May 24, 2009
- Messages
- 5,538
- Reaction score
- 213
- Points
- 73
lagi best google apps kn?
amenda plak ni, nko salah umah ka bro?:-?
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
lagi best google apps kn?
I manage to create a custom C# code. Now user can browse & import the data from excel to sharepoint list, no need to use copy paste into edit datasheet!paid
paid
paid
You need to use this on the page ;
<asp:FileUpload ID="FileUploadExcel" runat="server" />
The code file is ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
public void ButtonImportData_Click(object sender, EventArgs e)
{
try
{
if ((FileUploadExcel.HasFile))
{
ButtonUploadFile.Visible = false;
ButtonImportData.Visible = false;
OleDbConnection conn = new OleDbConnection();
OleDbCommand cmd = new OleDbCommand();
OleDbDataAdapter da = new OleDbDataAdapter();
DataSet ds = new DataSet();
string query = null;
string connString = "";
string strFileName = DateTime.Now.ToString("ddMMyyyy_HHmmss");
string strFileType = System.IO.Path.GetExtension(FileUploadExcel.FileName).ToString().ToLower();
if (strFileType == ".xls" || strFileType == ".xlsx")
{
int i = 0;
//Need to do something here, you can set it to check file format before proceed!
i++;
}
if (strFileType.Trim() == ".xls")
{
connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileUploadExcel.PostedFile.FileName + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=2\"";
}
else if (strFileType.Trim() == ".xlsx")
{
connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + FileUploadExcel.PostedFile.FileName + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=2\"";
}
query = "SELECT * FROM [Sheet1$]";
conn = new OleDbConnection(connString);
if (conn.State == ConnectionState.Closed) conn.Open();
cmd = new OleDbCommand(query, conn);
da = new OleDbDataAdapter(cmd);
ds = new DataSet();
da.Fill(ds);
System.Data.DataSet myDataSet = new DataSet();
System.Data.DataTable sheetData = new System.Data.DataTable("ExcelInfo");
da.Fill(sheetData);
myDataSet.Tables.Add(sheetData);
foreach (System.Data.DataTable thisTable in myDataSet.Tables)
{
foreach (DataRow myRow in thisTable.Rows)
{
SPSite spSite = new SPSite("http://isaa/EAR/default.aspx");
SPWeb spWeb = spSite.OpenWeb();
SPList spTarget = spWeb.Lists["TestCopyMove"];
SPListItemCollection spTargetItemCollection = spTarget.Items;
{
spWeb.AllowUnsafeUpdates = true;
if (!thisTable.Rows.Count.Equals(0))
{
SPListItem spTargetItem;
spTargetItem = spTarget.Items.Add();
try
{
if (thisTable.Columns[0] != null)
spTargetItem["Title"] = myRow[0].ToString();
else
spTargetItem["Title"] = null;
}
catch (Exception ex)
{
Response.Write(ex.Message + "Error at Title<BR>");
}
if (thisTable.Columns[1] != null)
{
string dtRatingDate = myRow[1].ToString();
DateTime RatingDate = DateTime.Parse(dtRatingDate);
spTargetItem["Birthday"] = RatingDate;
}
else
spTargetItem["Birthday"] = null;
try
{
if (thisTable.Columns[2] != null)
spTargetItem["Race"] = myRow[2].ToString();
else
spTargetItem["Race"] = null;
}
catch (Exception ex)
{
Response.Write(ex.Message + "Error at Race<BR>");
}
try
{
if (thisTable.Columns[3] != null)
spTargetItem["Gender"] = myRow[3].ToString();
else
spTargetItem["Gender"] = null;
}
catch (Exception ex)
{
Response.Write(ex.Message + "Error at Gender<BR>");
}
try
{
if (thisTable.Columns[4] != null)
{
string currVal = myRow[4].ToString();
Decimal NewcurrVal = Decimal.Parse(currVal);
spTargetItem["Saving"] = NewcurrVal.ToString("#,##0.00");
}
else
spTargetItem["Saving"] = null;
}
catch (Exception ex)
{
Response.Write(ex.Message + "Error at Saving<BR>");
}
spTargetItem.Update();
}
spWeb.AllowUnsafeUpdates = false;
}
}
}
LabelUpload.Visible = true;
LabelUpload.ForeColor = System.Drawing.Color.Green;
LabelUpload.Text = "<b>File Name :</b> " + FileUploadExcel.PostedFile.FileName + "<br>" + "<b>File Type :</b> " + FileUploadExcel.PostedFile.ContentType + "<br>" + "<b>File Size :</b> " + FileUploadExcel.PostedFile.ContentLength + " kb<br><br><b>Successfully Import All Data From This File To Sharepoint List!</b>";
lblMessage.Text = "<BR>Data Retrieved Successfully! Total Available Records:" + ds.Tables[0].Rows.Count;
lblMessage.ForeColor = System.Drawing.Color.Green;
lblMessage.Visible = true;
da.Dispose();
conn.Close();
conn.Dispose();
}
else
{
ButtonUploadFile.Visible = false;
lblMessage.Text = "No file selected!";
lblMessage.ForeColor = System.Drawing.Color.Red;
lblMessage.Visible = true;
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
lblMessage.Text = "Only excel files allowed";
lblMessage.ForeColor = System.Drawing.Color.Red;
lblMessage.Visible = true;
Response.Write("<script>if(!window.alert('Wrong file format detected! Please try again!')){window.location.href='http://isaa/EAR/_layouts/TEST2/importexcel.aspx'}</script>");
return;
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This is fuc-king bas-tard code I manage to create...
Hope it can help you in the future.
$(document).ready(function () {
$().SPServices({
operation: "GetGroupCollectionFromUser",
userLoginName: $().SPServices.SPGetCurrentUser(),
async: false,
completefunc: function (xData, Status) {
if ($(xData.responseXML).find("Group[Name='<<nama group korang>>']").length == 1 {
//alert('User in a group 1');
}
else if $(xData.responseXML).find("Group[Name='<<nama group korang yang ke 2>>']").length == 1 {
//alert('User in a group 2');
}
else {
//alert('User in a group 3');
}
});
});
code die cengginie :
Code:$(document).ready(function () { $().SPServices({ operation: "GetGroupCollectionFromUser", userLoginName: $().SPServices.SPGetCurrentUser(), async: false, completefunc: function (xData, Status) { if ($(xData.responseXML).find("Group[Name='<<nama group korang>>']").length == 1 { //alert('User in a group 1'); } else if $(xData.responseXML).find("Group[Name='<<nama group korang yang ke 2>>']").length == 1 { //alert('User in a group 2'); } else { //alert('User in a group 3'); } }); });
cara nk gne :
1. paste jek code tu kt dlm aspx korang... (x yah nk ubah web config)
2. siap dh...
* dari segi sekuriti, x bape digalakkan sgt... sbb hacker bole view name2 group korang tu...*
public void btnSubmit_Click(object sender, EventArgs e)
{
using (SPSite spSite = SPContext.Current.Site)
{
using (SPWeb spWeb = spSite.OpenWeb())
{
spWeb.AllowUnsafeUpdates = true;
SPList list = SPContext.Current.Web.Lists["Conventional - BC To Update"];
SPListItemCollection itemCollection;
SPQuery query = new SPQuery();
query.Query="<Query><Where><Eq><FieldRef Name='ID' /><Value Type='Counter'> + strID + </Value></Eq></Where></Query>";
itemCollection = list.GetItems(query);
if(itemCollection.Count > 0)
{
SPListItem item = itemCollection[Convert.ToInt32(strID)];
try //sample try run untuk 3 column dulu
{
item["Customer Name"] = txtCustomer.Text;
}
catch(Exception ex)
{
Response.Write("Error at : " + ex + "<BR>");
}
try
{
item["Business Centre"] = ddlBC.SelectedItem.Text;
}
catch (Exception ex)
{
Response.Write("Error at : " + ex + "<BR>");
}
try
{
item["Relationship Manager"] = txtOIC.Text;
}
catch (Exception ex)
{
Response.Write("Error at : " + ex + "<BR>");
}
item.Update();
}
spWeb.AllowUnsafeUpdates = false;
}
}
}
Invalid data has been used to update the list item. The field you are trying to update may be read only. at Microsoft.SharePoint.Library.SPRequestInternalClass.AddOrUpdateItem(String bstrUrl, String bstrListName, Boolean bAdd, Boolean bSystemUpdate, Boolean bPreserveItemVersion, Boolean bUpdateNoVersion, Int32& plID, String& pbstrGuid, Guid pbstrNewDocId, Boolean bHasNewDocId, String bstrVersion, Object& pvarAttachmentNames, Object& pvarAttachmentContents, Object& pvarProperties, Boolean bCheckOut, Boolean bCheckin, Boolean bMigration, Boolean bPublish)
at Microsoft.SharePoint.Library.SPRequest.AddOrUpdateItem(String bstrUrl, String bstrListName, Boolean bAdd, Boolean bSystemUpdate, Boolean bPreserveItemVersion, Boolean bUpdateNoVersion, Int32& plID, String& pbstrGuid, Guid pbstrNewDocId, Boolean bHasNewDocId, String bstrVersion, Object& pvarAttachmentNames, Object& pvarAttachmentContents, Object& pvarProperties, Boolean bCheckOut, Boolean bCheckin, Boolean bMigration, Boolean bPublish)
bro, ko gne lookup column ke???
lookup column x leh set value directly camtu...
refer kt sini :
http://rmanimaran.wordpress.com/201...ld-you-are-trying-to-update-may-be-read-only/
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SharePoint;
using System.Web.UI;
public partial class IDCheck : System.Web.UI.UserControl
{
public void Page_Load(object sender, EventArgs e)
{
using (SPSite spSite = SPContext.Current.Site)
{
using (SPWeb spWeb = spSite.OpenWeb())
{
spWeb.AllowUnsafeUpdates = true;
SPUser spUser = spWeb.CurrentUser;
SPGroupCollection spGroups = spUser.Groups;
SPList spList = spWeb.Lists["My List"];
string groups = "";
foreach (SPGroup spGroup in spGroups)
{
groups = groups + spGroup.Name.ToString() + "; ";
}
//if (groups.Contains("Admin"))
//{
//DO SOMETHING!
//Response.Redirect("https://www.mysite.cimb.com/mysubsite/Lists/mylist/AllItems.aspx");
//}
//else
if (groups.Contains("Approver"))
{
//DO SOMETHING!
string query = "<Query><Where><Eq><FieldRef Name='Status' /><Value Type='Choice'>Waiting Approval</Value></Eq></Where></Query>";
SPViewCollection spItemCollection = spList.Views;
for (int i = 0; i < spItemCollection.Count; i++)
{
SPView spView = spItemCollection;
spView.Query = query;
spView.Update();
}
}
else
if (groups.Contains("Verifier"))
{
//DO SOMETHING!
string query = "<Query><Where><Eq><FieldRef Name='Status' /><Value Type='Choice'>Waiting Verification</Value></Eq></Where></Query>";
SPViewCollection spItemCollection = spList.Views;
for (int i = 0; i < spItemCollection.Count; i++)
{
SPView spView = spItemCollection;
spView.Query = query;
spView.Update();
}
}
else
if (groups.Contains("User"))
{
//DO SOMETHING!
string query = "<Where><Or><Eq><FieldRef Name='Status' /><Value Type='Choice'>Rejected</Value></Eq><Eq><FieldRef Name='Status' /><Value Type='Choice'>Not Updated Yet</Value></Eq></Or></Where>";
SPViewCollection spItemCollection = spList.Views;
for (int i = 0; i < spItemCollection.Count; i++)
{
SPView spView = spItemCollection;
spView.Query = query;
spView.Update();
}
}
//else
//{
//DO SOMETHING!
//Response.Write("<br><br><br><br><br><br><br><br><br><center><b><big><big><big><big><big>You are not authorized to access this page!</big></big></big></big></big></b></center>");
//Response.Write("<br><br><br><center><b>Click OK to go back to where you start!</center></b></br></br></br>");
//Response.Write("<script>if(!window.alert('Access denied!')){window.location.href='https://www.mysite.com/mysubsite/default.aspx'}</script>");
//Response.End();
//}
spWeb.AllowUnsafeUpdates = false;
}
}
}
}