How to retrieve data from an Ethereum Block

0 votes

I did one small event registration smart contract in which I purchased a ticket for an event by giving the details of my email id and no.of tickets I want. I am using testrpc, truffle, and private net. After clicking on purchase I got these details in tetrpc terminal

Transaction: 0x35e92857102b0dbacd43234d1ea57790405eb9bef956b245c6b7737bc23d011b
Gas usage: 106532 Block Number: 5 Block Time: Sat Feb 03 2018 12:05:57 GMT+0530 (IST)

Transaction: 0x35e92857102b0dbacd43234d1ea57790405eb9bef956b245c6b7737bc23d011b
Gas usage: 106532 Block Number: 5 Block Time: Sat Feb 03 2018 12:05:57 GMT+0530 (IST)

This is how I decode the transaction Id:

sam123@ubuntu:~/EventRegistration-POC/EventRegistration$ truffle console
truffle(development)> web3.eth.getTransaction('0x35e92857102b0dbacd43234d1ea57790405eb9bef956b245c6b7737bc23d011b')
{ hash: '0x35e92857102b0dbacd43234d1ea57790405eb9bef956b245c6b7737bc23d011b',
  nonce: 4,
  blockHash: '0x7c790dae57babfe40d68d8aad94913c2b748501c5734aec86cc3fcf0afc4f154',
  blockNumber: 5,
  transactionIndex: 0,
  from: '0x031e060414a0d2573f5b10bc75c0894d72288292',
  to: '0xa88a366e888bbccfb78092957ffc7760bc7c6db1',
  value: BigNumber { s: 1, e: 18, c: [ 60000 ] },
  gas: 200000,
  gasPrice: BigNumber { s: 1, e: 0, c: [ 1 ] },
  input: '0xa28f161c00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000b6d40676d61696c2e636f6d000000000000000000000000000000000000000000' }
truffle(development)> 

But I didn't get the details I was given while purchasing. How to do this?

Jul 19, 2018 in Blockchain by sabby
• 4,370 points
1,099 views

1 answer to this question.

0 votes

To get transaction details like Block Hash and Block index: web3.eth.getTransaction(txHash) 

It will take some time to miner to mine block and add to blockchain. So its not instant.

If you want to know any storage value is added/modified in blockchain to outside world, then we need to raise en event in smart contract.

Look at the below Solidity and Javascript code:

 rule PreventTransaction {
description: "prevent others executing transactions"
participant: "org.acme.trading.Employee"
operation: ALL
resource: "org.acme.trading.AssignStatus"
action: DENY
}

Javascript:

// Contract deployed address.
var contractAddress = "0x06433f4fc50423f71329597f50fb0a42cfecb11f"; 

if (typeof web3 !== 'undefined') {
     web3 = new Web3(web3.currentProvider);
} else {
     // set the provider you want from Web3.providers
     web3 = new Web3(new Web3.providers.HttpProvider("http://127.0.0.1:8545"));
}

//Open build folder and you will find contact json file copy the appropriate JSON and paste it there.
var contractABI = web3.eth.contract(/** ABI Here **/);

//Connected contract to your local network
var contract = contractABI.at(contractAddress);

//Loading booking event function.
var booking_event = web3.sha3('on_success_booking(address,string,string)');

//Watching events, when onBookingCompleted() tran's mined then event get triggered. You can get all previous events also. for that need to apply filters.
booking_event.watch((error, result) => {
   if(error){
       console.log("error",error);
   }
   console.log("Result", result); //result.args holds values, result.args.id, result.args.bookingId and result.args.emailid
 });

answered Jul 19, 2018 by Perry
• 17,100 points

Related Questions In Blockchain

+1 vote
1 answer

How to store state data in Ethereum blockchain?

You won't have to overwrite the whole ...READ MORE

answered Apr 24, 2018 in Blockchain by Shashank
• 10,400 points
277 views
0 votes
2 answers

How to get notified when an event triggers on ethereum smart contract?

Muchas gracias. ?Como puedo iniciar sesion? READ MORE

answered May 2, 2020 in Blockchain by aqowcmbevs
1,133 views
0 votes
1 answer
0 votes
1 answer

How can I retrieve to and from address in transaction directly from blockchain?

The spending conditions, i.e., who is able ...READ MORE

answered Jul 11, 2018 in Blockchain by Shashank
• 10,400 points
332 views
0 votes
1 answer

Truffle tests not running after truffle init

This was a bug. They've fixed it. ...READ MORE

answered Sep 11, 2018 in Blockchain by Christine
• 15,830 points
603 views
0 votes
1 answer
0 votes
1 answer

Protocols used in a distributed/dlt system for the nodes to establish communication

yes all are over TCP/IP connections secured by TLS encryption in hashgraph architecture-hashgraph, ...READ MORE

answered Aug 6, 2018 in Blockchain by aryya
• 7,440 points
446 views
0 votes
1 answer

How to retrieve data from a block to a blockchain?

web3.eth.getTransaction(txHash) will returns transaction details like blockHash, transactionIndex, ...READ MORE

answered Jun 26, 2018 in Blockchain by Perry
• 17,100 points
2,203 views
0 votes
1 answer

How is a request sent from an app to a smart contract?

Yes, the contract is distributed by every node ...READ MORE

answered Jun 4, 2018 in Blockchain by Perry
• 17,100 points
187 views